Привет всем и счастливой ПасхиПравильно проводки данных с аутентификацией в JS/JQuery
Я пишу приложение через Electron для простого текстового редактора, публикующие тяг к medium.com. Они предоставляют api и документацию для него, но мои знания в jquery и js все еще немного ограничены. По сути, я использую Ajax для отправки данных на носитель, но получаю ошибку 400. Я уверен, что это то, что на самом деле тупой и простой, но я не могу понять это, так вот код, который я написал, чтобы отправить данные:
$('.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);
}
});
});
Теперь я предоставление маркер доступа, я просто 'xxxxx'd это для публикации. user.id получен в начале, я могу подтвердить, что он прошел правильно. Что касается документации, представленной, вы можете увидеть его здесь: https://github.com/Medium/medium-api-docs#33-posts, но по существу это просит для этого:
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"
}
Как я уже сказал, я несколько неопытен с заголовками в AJAX и немного запутался, так что любая помощь будет оценена , Благодарю.
Обновленный код:
$.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);
}
});
Вы можете проверить, что такое ответ на ошибку 400? Обычно он объясняет, чего не хватает – Akis
@ Jam3sn - Вы нашли решение? –
Нет, я все еще не могу сделать сообщение. Я использую подобный метод для получения сведений о пользователях, и он работает безупречно. Так что не уверен, я попытался связаться с инженерами Mediums, но не имел большой удачи:/ – Jam3sn