From b7f2548149876ba644e0794c177989e3b4079bdb Mon Sep 17 00:00:00 2001 From: Jim Heising Date: Thu, 21 Aug 2014 21:25:21 -0700 Subject: [PATCH 1/2] Update README.md --- README.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/README.md b/README.md index 61262d2..5fe0325 100644 --- a/README.md +++ b/README.md @@ -2,3 +2,41 @@ thingproxy ========== A simple forward proxy server for processing API calls to servers that don't send CORS headers or support HTTPS. + +### what? + +thingproxy allows javascript code on your site to access resources on other domains that would normally be blocked due to the [same-origin policy](http://en.wikipedia.org/wiki/Same_origin_policy). It acts as a proxy between your browser and a remote server and adds the proper CORS headers to the response. + +In addition, some browsers don't allow requests for non-encrypted HTTP data if the page itself is loaded from HTTPS. thingproxy can call nonthingproxy also allows you to access non-secure HTTP API's from a secure HTTPS url. + +While you can run your own thingproxy server with this source code, but freeboard.io offers a free proxy available at: + +http://thingproxy.freeboard.io and https://thingproxy.freeboard.io + +### why? + +Dashboards created with freeboard normally access APIs directly from ajax calls from javascript. Many API providers do not provide the proper CORS headers, or don't support HTTPS— thing proxy is provided to overcome these limitations. + +### how? + +Just call the url with the form: + +``` +http(s)://thingproxy.freeboard.io/fetch/ +``` + +For example: + +``` +https://thingproxy.freeboard.io/fetch/http://my.api.com/get/stuff +``` + +Any HTTP method, headers and body you send, will be sent to the URL you specify and the response will be sent back to you with the proper CORS headers attached. + +### caveats + +Don't abuse the thingproxy.freeboard.io server— it is meant for relatively small API calls and not as a proxy server to hide your identity. Right now we limit requests and responses to 100,000 characters each (sorry no file downloads), and throttle each IP to 10 requests/second. + +### privacy + +thingproxy.freeboard.io does log the date, requester's IP address, and URL for each request sent to it. We will not share or sell this data to anyone period. From 9548bc6014181395f49a2c8258215bc3d946e0c5 Mon Sep 17 00:00:00 2001 From: Jim Heising Date: Thu, 21 Aug 2014 21:27:56 -0700 Subject: [PATCH 2/2] Update README.md --- README.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 5fe0325..2c7fea6 100644 --- a/README.md +++ b/README.md @@ -19,11 +19,7 @@ Dashboards created with freeboard normally access APIs directly from ajax calls ### how? -Just call the url with the form: - -``` -http(s)://thingproxy.freeboard.io/fetch/ -``` +Just prefix any url with http(s)://thingproxy.freeboard.io/fetch/ For example: @@ -39,4 +35,4 @@ Don't abuse the thingproxy.freeboard.io server— it is meant for relatively sma ### privacy -thingproxy.freeboard.io does log the date, requester's IP address, and URL for each request sent to it. We will not share or sell this data to anyone period. +thingproxy.freeboard.io does log the date, requester's IP address, and URL for each request sent to it. We will not share or sell this data to anyone, period.