diff --git a/server/handlers.go b/server/handlers.go
index c5be850..d6b43ad 100644
--- a/server/handlers.go
+++ b/server/handlers.go
@@ -16,6 +16,7 @@ import (
"math"
"html"
"fmt"
+ "io/ioutil"
)
func IndexHandler(rw http.ResponseWriter, req *http.Request) {
@@ -472,3 +473,16 @@ func OPMLExportHandler(rw http.ResponseWriter, req *http.Request) {
rw.Write([]byte(builder.String()))
}
}
+
+func PageCrawlHandler(rw http.ResponseWriter, req *http.Request) {
+ query := req.URL.Query()
+ if url := query.Get("url"); len(url) > 0 {
+ res, err := http.Get(url)
+ if err == nil {
+ body, err := ioutil.ReadAll(res.Body)
+ if err == nil {
+ rw.Write(body)
+ }
+ }
+ }
+}
diff --git a/server/server.go b/server/server.go
index d55908a..3e4bcba 100644
--- a/server/server.go
+++ b/server/server.go
@@ -82,6 +82,7 @@ var routes []Route = []Route{
p("/api/settings", SettingsHandler),
p("/opml/import", OPMLImportHandler),
p("/opml/export", OPMLExportHandler),
+ p("/page", PageCrawlHandler),
}
func Vars(req *http.Request) map[string]string {
diff --git a/template/index.html b/template/index.html
index 5e7b066..09117cb 100644
--- a/template/index.html
+++ b/template/index.html
@@ -117,6 +117,9 @@
+