Note that there are some explanatory texts on larger screens.

plurals
  1. POReturn a JSON string on HTTP request
    primarykey
    data
    text
    <p>I am making a WP7 app that needs to get JSON data from an external website. However, I do not want to parse the JSON directly through the app for many reasons, one being that the returned data is not always consistent. </p> <p>To solve this problem, I want to write my own service in a language I know (JavaScript, PHP, RoR are preferred) to return this data in a consistent format. Instead of sending a request to the original URL, I want to be able to send a request to my service, which will then return the data.</p> <p>I have no idea how to write such a service that returns up-to-date JSON from the original source. The information keeps changing very second, so I cannot statically render a page and update it every day or whatever. The data must be polled every time a user of my WP7 application wishes to look at it.</p> <p>Thank you for any guidance.</p> <p>EDITS for DevZer0:</p> <ul> <li><code>echo $data</code> just prints <code>Array</code></li> <li><code>echo json_encode($data)</code> gives me this:</li> </ul> <p><code>{ "stream": [ [ "&lt;/td&gt;BeyondTheSummit&lt;/td&gt;13751&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;WagamamaTV&lt;/td&gt;2653&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;VeRsuta&lt;/td&gt;1566&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;dubasTV&lt;/td&gt;1128&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;followJotM&lt;/td&gt;733&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;EternaLEnVyy&lt;/td&gt;532&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;InozemeC&lt;/td&gt;448&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;liquidkorok&lt;/td&gt;295&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;DotaTalkStream&lt;/td&gt;279&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;Sheever&lt;/td&gt;260&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;Weppas&lt;/td&gt;215&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;BeyondTheSummit2&lt;/td&gt;93&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;dota2russia&lt;/td&gt;56&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/td&gt;PMSyanyan&lt;/td&gt;54&lt;/td&gt;&lt;/tr&gt;" ] ], "vod": [ [ "&lt;/span&gt;&lt;/td&gt;GosuCup Asia VII: Zenith vs Dreamz /w ..&lt;/td&gt;8&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Dota 2 Dire Overlord Announcer Pack (W..&lt;/td&gt;301&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Dota 2 Purge plays Drow Ranger&lt;/td&gt;9348&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Typical Mistakes vs eL'Pride BigPoi..&lt;/td&gt;1184&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Team Empire vs Oslik Gaming BigPoin..&lt;/td&gt;1162&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Dota 2 Bottom 10 - Ep. 1 (Pilot - Reje..&lt;/td&gt;73888&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;iCCup vs Next kz BigPoint Battle ..&lt;/td&gt;631&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;eL'Pride vs RoX KIS BigPoint Battle..&lt;/td&gt;712&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Fnatic EU vs Artyk Gaming Game 1 Big..&lt;/td&gt;2155&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Fnatic EU vs Artyk Gaming Game 2 Big..&lt;/td&gt;1668&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Fnatic EU vs Lions Pride Bigpoint Ba..&lt;/td&gt;988&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Artyk Gaming vs iCCup Bigpoint Battl..&lt;/td&gt;666&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;GosuCup Asia VII: Zenith vs Mineski&lt;/td&gt;316&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;Orange eSports' 'Net' - Amazing Rubick..&lt;/td&gt;5868&lt;/td&gt;&lt;/tr&gt;" ], [ "&lt;/span&gt;&lt;/td&gt;DotA2 - Outshine Vol.3&lt;/td&gt;18672&lt;/td&gt;&lt;/tr&gt;" ] ], "dota2vods": [ [ "2w ago&lt;/td&gt;Orange vs &lt;/span&gt;Rising Stars&lt;/td&gt;BO3&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;KP vs &lt;/span&gt;ICCup&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;KP vs &lt;/span&gt;Mouz&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;Na'Vi vs &lt;/span&gt;RoxKiS&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;Power Rangers vs &lt;/span&gt;Alliance&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;LGD.INT vs &lt;/span&gt;Orange&lt;/td&gt;BO3&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;OsG vs &lt;/span&gt;Alliance&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;zRage vs &lt;/span&gt;KP&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;Empire vs &lt;/span&gt;Quantic&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "2w ago&lt;/td&gt;Empire vs &lt;/span&gt;TCM&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "3w ago&lt;/td&gt;Empire vs &lt;/span&gt;KP&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "3w ago&lt;/td&gt;Quantic vs &lt;/span&gt;TCM&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "3w ago&lt;/td&gt;Empire vs &lt;/span&gt;RoxKiS&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "3w ago&lt;/td&gt;Mouz vs &lt;/span&gt;ICCup&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ], [ "3w ago&lt;/td&gt;4FC vs &lt;/span&gt;Mouz&lt;/td&gt;BO1&lt;/td&gt;&lt;/tr&gt;" ] ] }</code></p> <p>If i copy this raw data into JSONLint, it says the JSON is valid. However, if I put in my URL ("<a href="http://blah.com/streams.php" rel="nofollow">http://blah.com/streams.php</a>"), it says it is invalid. I know that JSONLint can take a URL to validate, not just raw data.</p> <p>Here's my full PHP file as of now (streams.php):</p> <pre><code>&lt;?php header("Content-Type: application/json"); $url = "http://the-website-with-json"; $json = file_get_contents($url); $data = json_decode($json, TRUE); return json_encode($data); ?&gt; </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload