Ho cercato di effettuare questa richiesta di post all'API di github per l'ultimo paio di giorni, ma purtroppo la risposta è tornata come "messaggio errato"Fare una richiesta di posta all'API di Github per la creazione di un problema non funziona
ecco il pezzo di codice stiamo inviando nella richiesta post utilizzando https chiedere per nodo -
Questi sono i dati post-
var issueData = JSON.stringify({
"title":title,
"body":comment
});
Questo è il file opzioni
var options = {
host: 'api.github.com',
path: '/repos/sohilpandya/katasohil/issues?access_token='+sessions.token,
headers: {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:24.0) Gecko/20100101 Firefox/24.0',
},
method: 'POST'
};
Questa è la richiesta HTTPS
var requestaddIssue = https.request(options, function(responseFromIssues){
responseFromIssues.setEncoding('utf8');
responseFromIssues.on('data', function(chunk){
console.log('>>>>chunk>>>>>',chunk);
issueBody += chunk;
});
responseFromIssues.on('end',function(issueBody){
console.log(issueBody);
});
});
requestaddIssue.write(issueData);
requestaddIssue.end();
Ho provato un altro approccio in cui il token di autenticazione per l'utente si trova nell'intestazione come
'Authentication': 'OAuth '+ sessions.token (where we are storing token inside sessions)
Ma la risposta pezzo sembra sempre di tornare con il seguente nel log della console.
{
"message": "Not Found",
"documentation_url": "https://developer.github.com/v3/issues/#create-an-issue"
}
Ho provato lo stesso in apigee e sembra funzionare bene e ritorna alla risposta corretta. Sperando che qualcuno possa trovare l'errore minore nel codice sopra che causa questo errore di messaggio errato.
avete ottenuto questo al lavoro con altre richieste? Hai anche considerato di utilizzare un modulo per creare richieste come [richiesta] (https://www.npmjs.com/package/request) o anche solo usando [node-github] (https://github.com/mikedeboer/ nodo-github)? – grimurd
@GrimurD Ho funzionato con una richiesta get per recuperare alcuni dati utente. Di solito uso il modulo di richiesta, ma ho provato a scomporlo solo per trovare il bug. –
Probabilmente dovresti registrare la richiesta in uscita usando qualcosa come [fiddler] (http://www.telerik.com/fiddler) per assicurarti che la richiesta sia corretta. Deve esserci qualcosa di sbagliato nella richiesta dato che stai recuperando 404. – grimurd