YourMembership API - Session.Create = Неизвестная ошибка Ответ - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь создать вызов API-интерфейса YourMembership, в частности, метода Session.Create.

function create_session(){
    var xml_create_session = '<?xml version="1.0" encoding="utf-8" ?>' +
    '<YourMembership>' +
    '<Version>' + ym_api_version + '</Version>' +
    '<ApiKey>' + ym_api_key + '</ApiKey>' +
    '<CallID>001</CallID>' +
    '<Call Method="Session.Create"></Call>' +
    '</YourMembership>';
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            var session_id = xhttp.responseText.SessionID;
            authorize_token(session_id);
        }
    };
    xhttp.open("POST", api_url,true);
    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhttp.send(xml_create_session);  
}

Когда я отправляю этот запрос в API, я получаю следующий ответ, который содержит как ошибкуотправленный API, а также исходный запрос, представленный API (примечание: я отредактировал наш ключ API, он был правильным в ответе):

<?xml version="1.0" encoding="utf-8" ?>
<YourMembership_Response>
<ErrCode>999</ErrCode>
<ExtendedErrorInfo></ExtendedErrorInfo>
<ErrDesc>An unknown error has occured.</ErrDesc>
<XmlRequest>
<YourMembership>
<Version>2.02</Version>
<ApiKey>REDACTED</ApiKey>
<CallID>001</CallID>
<Call Method="Session.Create"></Call>
</YourMembership>
</XmlRequest>
</YourMembership_Response>

YourMembership в своей документации заявляет, что запрос APIдолжен быть представлен в виде XML-файла через POST и предоставить следующий пример для вызова Session.Create на их сайте (https://api.yourmembership.com/reference/2_02/Session_Create.htm):

<?xml version="1.0" encoding="utf-8" ?>

<YourMembership>
    <Version>2.02</Version>
    <ApiKey>3D638C5F-CCE2-4638-A2C1-355FA7BBC917</ApiKey>
    <CallID>001</CallID>
    <Call Method="Session.Create"></Call>
</YourMembership>

Возможно, это может быть проблемой, специфичной дляплатформы, но также весьма вероятно, что что-то не так с моим JS или с пониманием того, как создать XML-файл для отправки в API, поэтому любые рекомендации очень ценятся! Большое спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...