Advertisement
Guest User

Untitled

a guest
Sep 16th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 2.16 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4.     "fmt" // пакет для форматированного ввода вывода
  5.     "net/http" // пакет для поддержки HTTP протокола
  6.     "strings" // пакет для работы с  UTF-8 строками
  7.     "log" // пакет для логирования
  8.     "github.com/RealJK/rss-parser-go"
  9. )
  10.  
  11. func HomeRouterHandler(w http.ResponseWriter, r *http.Request) {
  12.     r.ParseForm() //анализ аргументов,
  13.     fmt.Println(r.Form)  // ввод информации о форме на стороне сервера
  14.     fmt.Println("path", r.URL.Path)
  15.     fmt.Println("scheme", r.URL.Scheme)
  16.     fmt.Println(r.Form["url_long"])
  17.     for k, v := range r.Form {
  18.         fmt.Println("key:", k)
  19.         fmt.Println("val:", strings.Join(v, ""))
  20.     }
  21.     rssObject, err := rss.ParseRSS("http://blagnews.ru/rss_vk.xml")
  22.     if err != nil {
  23.  
  24.         fmt.Fprintf(w,"<div style='text-align:center;' >Title           : %s\n</h1>", rssObject.Channel.Title)
  25.         fmt.Fprintf(w,"<h1>Generator       : %s\n</h1>", rssObject.Channel.Generator)
  26.         fmt.Fprintf(w,"<h1>PubDate         : %s\n</h1>", rssObject.Channel.PubDate)
  27.         fmt.Fprintf(w,"<h1>LastBuildDate   : %s\n</h1>", rssObject.Channel.LastBuildDate)
  28.         fmt.Fprintf(w,"<h1>Description     : %s\n</h1>", rssObject.Channel.Description)
  29.  
  30.         fmt.Fprintf(w,"<h1>Number of Items : %d\n</h1>", len(rssObject.Channel.Items))
  31.  
  32.     for v := range rssObject.Channel.Items {
  33.         item := rssObject.Channel.Items[v]
  34.             fmt.Println()
  35.         fmt.Fprintf(w,"<h1>Item Number : %d\n</h1>", v)
  36.         fmt.Fprintf(w,"<h1>Title       : %s\n</h1>", item.Title)
  37.         fmt.Fprintf(w,"<h1>Link        : %s\n</h1>", item.Link)
  38.         fmt.Fprintf(w,"<h1>Description : %s\n</h1>", item.Description)
  39.         fmt.Fprintf(w,"<h1>Guid        : %s\n</h1>", item.Guid.Value)
  40.         }
  41.     }
  42. }
  43.  
  44. func main() {
  45.     http.HandleFunc("/", HomeRouterHandler) // установим роутер
  46.     err := http.ListenAndServe(":9000", nil) // задаем слушать порт
  47.     if err != nil {
  48.         log.Fatal("ListenAndServe: ", err)
  49.     }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement