Hallo alle und fröhliche ostern,korrekt Buchungsdaten mit Authentifizierung in JS/JQuery
ich für einen einfachen Texteditor eine Anwendung über Electron schreibe, dass Beiträge Entwürfe medium.com. Sie bieten eine API und die Dokumentation dafür, aber mein Wissen in jQuery und js ist immer noch ein wenig begrenzt. Im Wesentlichen benutze ich Ajax, um die Daten auf Medium zu stellen, aber einen Fehler von 400 zu erhalten. Ich bin sicher, es ist etwas wirklich dumm und einfach, aber ich kann es nicht herausfinden, also hier ist der Code, den ich geschrieben habe, die Daten zu schreiben:
$('.save_draft').click(function(){
var accessToken = 'xxxxx';
$.ajax({
url: "https://api.medium.com/v1/users/" + user.id + "/posts",
type: 'POST',
dataType: 'html',
contentType: "application/json",
beforeSend: function(xhr) {
xhr.setRequestHeader("Authentication", accessToken)
},
data: {
"title": "Liverpool FC",
"contentFormat": "html",
"content": "<h1>Liverpool FC</h1><p>You’ll never walk alone.</p>",
"canonicalUrl": "http://jamietalbot.com/posts/liverpool-fc",
"tags": ["football", "sport", "Liverpool"],
"publishStatus": "draft",
},
success: function(data){
alert(data);
}
});
});
Nun ich die accessToken bin Bereitstellung, ich habe gerade 'xxxxx'd es zum Posten. user.id wird am Anfang empfangen, ich kann bestätigen, dass es richtig durchkommt. Wie für die Dokumentation, können Sie es hier sehen: https://github.com/Medium/medium-api-docs#33-posts aber im wesentlichen dafür es fragt:
POST /v1/users/5303d74c64f66366f00cb9b2a94f3251bf5/posts HTTP/1.1
Host: api.medium.com
Authorization: Bearer 181d415f34379af07b2c11d144dfbe35d
Content-Type: application/json
Accept: application/json
Accept-Charset: utf-8
{
"title": "Liverpool FC",
"contentFormat": "html",
"content": "<h1>Liverpool FC</h1><p>You’ll never walk alone.</p>",
"canonicalUrl": "http://jamietalbot.com/posts/liverpool-fc",
"tags": ["football", "sport", "Liverpool"],
"publishStatus": "public"
}
Wie ich sagen, ich bin ein wenig unerfahren mit Headern in Ajax und ein wenig verwirrt, so würde jede Hilfe dankbar sein . Vielen Dank.
Der aktualisierte Code:
$.ajax({
url: "https://api.medium.com:443/v1/users/" + user.data.id + "/posts",
type: 'POST',
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'application/json',
'Accept': 'application/json'
},
data: JSON.stringify({
"title": "Liverpool FC",
"contentFormat": "html",
"content": "<h1>Liverpool FC</h1><p>You’ll never walk alone.</p>",
"canonicalUrl": "http://jamietalbot.com/posts/liverpool-fc",
"tags": ["football", "sport", "Liverpool"],
"publishStatus": "draft",
}),
success: function(data){
alert(data);
}
});
können Sie überprüfen, was die 400 Fehlerantwort ist? Normalerweise erklärt es, was fehlt – Akis
@ Jam3sn - Haben Sie eine Lösung gefunden? –
Nein, ich kann immer noch keinen Beitrag schreiben. Ich benutze eine ähnliche Methode, um die Benutzerdetails zu erhalten, und es funktioniert einwandfrei. Also nicht sicher, ich habe versucht, Kontakt mit Medics Engineering, aber nicht viel Glück:/ – Jam3sn