После небольшой помощи в отношении публикации нового сообщения в API Basecamp с использованием Google Script.
Я создал функцию, вставленную ниже, но при запуске ее через отладчик я получаю ответ 422 от Basecamp, в котором говорится, что атрибут <title>
пуст, а это не так.
<?xml version="1.0" encoding="UTF-8"?> <errors> <error>Title can't be blank</error> </errors>
Я попробовал тот же POST через «Advanced Rest Client» в Chrome, и сообщение прошло успешно.
function postBasecampApi(endpoint, payload) {
var xml = ""+
'<request>'+
'<post>'+
'<category-id>123890662</category-id>'+
'<title>sting</title>'+
'<body>testing</body>'+
'</post>'+
'<notify>test notify</notify>'+
'</request>';
var url = basecampCompleteUrl + '/projects/12029591/posts.xml';
var headers = {
Authorization : 'Basic ' + Utilities.base64Encode(user + ':' + password)
}
var opt = {
'method': 'POST',
'payload': xml,
'headers' : headers
};
var response = UrlFetchApp.fetch(url, opt);
return Xml.parse(response.getContentText(), false);
}
Заранее благодарю за любую помощь