Ошибка в объекте xmlrpcresp

#php #firefox-addon-sdk #add-on

#php #firefox-addon-sdk #надстройка

Вопрос:

Я работаю над проектом, в котором я пишу дополнение Firefox для взаимодействия со службой на моем клиентском сервере. Мой add отправляет POST-запрос, а затем сервер обнаруживает ошибку с объектом xmlrpcresp, который:

 Error: xmlrpcresp Object
(
  [val] => 0
  [valtyp] => 
  [errno] => 6
  [errstr] => No data received from server.
  [payload] => 
  [hdrs] => Array
    (
    )

  [_cookies] => Array
    (
    )

  [content_type] => text/xml
  [raw_data] => 
)
  

и мой запрос на добавление (он предназначен для получения данных json с сервера):

 Request({
            contentType: "application/x-www-form-urlencoded",
            headers: {
                "Keep-Alive": (model.get("interval1")  || 30) - 10
                },
            content: content,
            url: url,
            onComplete: function(res){
                var response = res || this.response;
                logger.logFile("collect steps status "   helper.getStatusData(response.json))
                if (response.status == "200"){
                    var json = response.json;
                    logger.object(json, "track download id");
                    if(json.results amp;amp; json.results.status == "0") 
                        callback(json);
                    else{
                        if(fallback) fallback(json);
                    }
                }
                else{
                    if(fallback) fallback(json);
                }
            }
        }).post()
  

ИТ-отдел клиента сказал, что это может быть ошибка заголовка, и это происходит не всегда, просто иногда.

Может ли мой приведенный выше запрос вызвать ошибку? Или это просто ошибка какого-то серверного процесса?

Ответ №1:

«Данные не получены с сервера» — это не сообщение об ошибке, которое выдал вам браузер, это ответ из библиотеки xmlrpc на сервере. Другими словами, ваше дополнение успешно отправило запрос на сервер и получило ответ. В ответе сервер указывает, что его вызов RPC не удался. Как это может быть проблемой клиента? Совершенно очевидно, что проблема с сервером, на который поступил вызов RPC — вместо того, чтобы дать ответ, он вернулся 200 OK без каких-либо данных, о чем говорится в сообщении об ошибке.

Комментарии:

1. Спасибо Владимиру Паланту. Еще один вопрос — у меня мало знаний о PHP XMLRPC — знаете ли вы, почему и когда происходит «Отсутствие данных, полученных с сервера»? Чтобы я мог поговорить с командой клиента?

2. @leegor: И я вообще ничего не знаю о PHP XMLRPC. Так что лучше задайте новый вопрос 😉