2016-09-28 4 views
0

post Ich habe ein JSON-Array wie folgt. Ich möchte es per Fetch-Funktion posten. i fanden keine Referenz für diese Art von ProblemenWie ein JSON-Array in der reaktiven nativen

[ 
    { 
     "id": 824233, 
     "project_id": 1457, 
     "issue_id": 123420, 
     "activity_id": 71, 
     "comments": "Testing", 
    }, 
    { 
     "id": 824234, 
     "project_id": 1457, 
     "issue_id": 123420, 
     "activity_id": 188, 
     "comments": "test", 
    }, 
    { 
     "id": 824235, 
     "project_id": 1457, 
     "issue_id": 123420, 
     "activity_id": 188, 
     "comments": "Test", 
    } 
] 

ich dieses Array stellen

Antwort

0

Sie über holen für Schleifen und Post für jedes Element des Arrays tun

+0

Das ist OK. wenn ich 100 Daten habe, dauert es zu viel Zeit. Ich möchte wissen, gibt es eine Möglichkeit, das JSON-Array – Vikiesakki

+0

zu veröffentlichen, können Sie Promise holen, https://facebook.github.io/react-native/docs/network.html#handling-the-response – rudydydy

+0

Können Sie erklären kurz ... bitte ... In Doc-Posting ist das Array nicht vorhanden – Vikiesakki

0

Verwenden Sie einfach JSON.stringify(yourArray), um das Array-JSON-Objekt in eine Zeichenfolge zu konvertieren und anschließend zu veröffentlichen.

var myArray = [ 
    { 
     "id": 824233, 
     "project_id": 1457, 
     "issue_id": 123420, 
     "activity_id": 71, 
     "comments": "Testing", 
    }, 
    { 
     "id": 824234, 
     "project_id": 1457, 
     "issue_id": 123420, 
     "activity_id": 188, 
     "comments": "test", 
    }, 
    { 
     "id": 824235, 
     "project_id": 1457, 
     "issue_id": 123420, 
     "activity_id": 188, 
     "comments": "Test", 
    } 
]; 

fetch('https://mywebsite.com/endpoint/', { 
    method: 'POST', 
    headers: { 
    'Accept': 'application/json', 
    'Content-Type': 'application/json', 
    }, 
    body: JSON.stringify(myArray) 
}) 

Quelle: https://facebook.github.io/react-native/docs/network.html#making-requests

0

Ahmed ist richtig Sie haben Ihre JSON stringify wenn holen verwenden. JQuery und andere Bibliotheken erledigen dies automatisch für Sie.

Ich habe eine kleine Hilfsfunktion erstellt, um mit Fetch zu arbeiten, die Ihre Daten für Sie stringiert und einige andere eingebaute Magie hat.

export default function headersFactory(jwtToken) { 
    return function headers(method, data) { 
    const header = { 
     mode: 'cors', 
     method, 
     headers: { 
     Accept: 'application/json', 
     'Content-Type': 'application/json', 
     }, 
    }; 
    if (jwtToken) header.headers.Authorization = `Bearer ${jwtToken.hash}`; 
    if (data) header.body = JSON.stringify(data); 
    return header; 
    }; 
} 

Jetzt können Sie es so nennen:

import headersFactory from './headersFactory'; 

fetch('https://mywebsite.com/endpoint/', headersFactory(token)('post', myArray)) 
    .then(res => res.json()) 
    .then(data => console.log(data)); 

Das Token Argument für Auth und ist optional Sie können auch gerne telefonisch unter:

// this 
const headers1 = headersFactory()('post', myArray); 

// or this 
const headers2 = headersFactory()('get'); 

// or this 
const headers3 = headersFactory({ hash: 'asdfo3qi38094' })('delete'); 
Verwandte Themen