2014-12-24 20 views
12

mi sono imbattuto in un succo che restituisce dati JSON https://gist.githubusercontent.com/rdsubhas/ed77e9547d989dabe061/raw/6d7775eaacd9beba826e0541ba391c0da3933878/gnc-js-apicome creare un Gist in github che restituisce dati JSON

Ho cercato di creare uno per restituire i dati JSON e ha finito per come questo https://gist.github.com/vigneshvdm/862ec5a97bbbe2021b79

Come posso creare un collegamento come il primo e renderlo restituire i dati in formato JSON

risposta

13

Il problema è il tipo di risposta HTTP è text/plain ma è necessario il application/json per la maggior parte dei client per gestirlo correttamente.

Aggiornamento: utilizzando rawgit.com sono riuscito a far funzionare il test con il tipo di contenuto corretto.

La mia prova Gist:https://gist.githubusercontent.com/anonymous/85dbc2c71023f24c2e26/raw/849848a71a1805a314897f9fe98eb7dc43e2e9b9/gistfile1.json

mio RawGit URL:https://rawgit.com/anonymous/85dbc2c71023f24c2e26/raw/849848a71a1805a314897f9fe98eb7dc43e2e9b9/gistfile1.json

tramite HTTP GET, l'invio di più di:

GET https://rawgit.com/anonymous/85dbc2c71023f24c2e26/raw/849848a71a1805a314897f9fe98eb7dc43e2e9b9/gistfile1.json HTTP/1.1 
Accept: application/json 
Host: rawgit.com 

ricevere indietro:

0.123.
HTTP/1.1 200 OK 
Server: nginx 
Date: Wed, 24 Dec 2014 10:57:07 GMT 
Content-Type: application/json 
Connection: keep-alive 
X-Content-Type-Options: nosniff 
X-Robots-Tag: none 
RawGit-Naughtiness: 0 
Access-Control-Allow-Origin: * 
ETag: "0250189db62d31523a5cd0da47449eb4" 
Cache-Control: max-age=300 
Vary: Accept-Encoding 
RawGit-Cache-Status: HIT 
Content-Length: 104 

[{ Name: "Vignesh", Salary: 30000 },{ Name: "Yuvraj", Salary: 90000 },{ Name: "Nithya", Salary: 87000 }] 

E un paio di screenshots:

enter image description here

enter image description here

+0

Come posso modificare il tipo di contenuto? –

+0

Questo è controllato sul server e non sembra che GitHub stia fornendo quell'abilità. Se sei responsabile per il client che lo sta gestendo, è probabile che lo faccia funzionare ignorando il tipo - o un server web proxy leggero che scarica la stringa di testo e lo riserva con quell'intestazione HTTP ... quale lingua/tecnologia è usata per il cilent? –

+0

jQuery/ajax/HTML –

5
  1. Metti il ​​tuo JSON in un nuovo succo.
  2. Cercare l'opzione raw. Fare clic e hai la versione in testo normale di quello che hai avuto.

Una cosa da notare è che sembra i dati JSON, ma le intestazioni rivelano - Content-Type:text/plain

È possibile utilizzare https://rawgit.com/ per modificare le intestazioni.

+0

come dovrei cambiarlo a JSON? –

+0

Non puoi. Quando il server github esegue il rendering della risposta, imposta il tipo di contenuto come text/plain. A meno che non si esegua il proprio server o si inverta la richiesta tramite un altro server che modifica le intestazioni. – hyades

+1

@vignesh vedere le modifiche – hyades

Problemi correlati