HTTP ОШИБКА 401 UNAUTHORIZED

При вызове метода возвращается ошибка: HTTP ошибки 401 Unauthorized с сообщением  "Not authorized" 

Класс ошибки: фатальная.

Причина № 1. Идентификатор сессии (X-SBISSessionID) в HTTP заголовке запроса не указан

  1. Пройти процедуру аутентификации для получения нового идентификатора;
  2. Указать правильный идентификатор сессии как значение заголовка HTTP пакета "X-SBISSessionID"

Пример неверного запроса (идентификатор сессии отсутствует):

POST https://online.sbis.ru/service/&srv=1 HTTP/1.1
Content-Type: application/json; charset=utf-8
{
 "jsonrpc": "2.0",
 "method": "СБИС.ПрочитатьДокумент",
 "params": {
 "Документ": {
 "Идентификатор": "e1756445-f1be-4562-b5cf-4549968b5f4f"
 }
 },
 "id": 0
}

Пример ответа:

HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
 "jsonrpc": "2.0",
 "error": "Not authorized.",
 "id": -1
}
 

Причина №2. Идентификатор сессии (X-SBISSessionID) в HTTP заголовке запроса устарел

Идентификатор сессии (X-SBISSessionID) в HTTP заголовке запроса устарел из-за большого периода неактивности (отсутствия вызовов) или после окончания регламентных работ на online.sbis.ru. 

  1. Пройти процедуру аутентификации для получения нового идентификатора;
  2. Указать правильный идентификатор сессии как значение заголовка HTTP пакета "X-SBISSessionID"

Пример неверного запроса

Ошибка заключается в указании кодировки UTF-8, при этом в JSON части запроса используется кодировка Win-1251. По тексту запроса это невозможно определить.

POST https://online.sbis.ru/service/?srv=1 HTTP/1.1
Content-Type: application/json; charset= utf-8
Accept: */*, application/json-rpcD
X-SBISSessionID: 0005281a-0005281b-00ba-3beb110a20594e21
{"jsonrpc":"2.0","method":"СБИС.СписокСлужебныхЭтапов","params":{"Фильтр":{}},"id":0}

Пример ответа:

HTTP/1.1 404 Not Found
Server: nginx/1.2.0
Content-Type: application/json; charset= utf-8
Content-Length: 240
X-SBISSessionID: 00001d8c-00001d8c-00ba-d297d42835bc46de
{"jsonrpc":"2.0","error":{"code":-32601,"message":"","details":"Не найден метод
Р’Р.РџРѕР"учитьСостояниеВнешнегоРнтерфейса","data":{"classid":"{1b4dbb1
3-ce61-483f-b1dd-03558672d15a}","addinfo":null}},"id":0}
П

Причина № 3. В запросе указан неверный адрес

Такое часто случается при выполнении методов аутентификации СБИС.Аутентифицировать, СБИС.АутентифицироватьПоСертификату, СБИС.Выход, СБИС.СписокСертификатовДляАутентификации и других)  при указании адреса https://online.sbis.ru/service/?srv=1 вместо https://online.sbis.ru/auth/service/).

Указать правильный адрес в запросе

Пример ответа на неправильный запрос:

Где указан неправильный адреса сервера (https://online.sbis.ru/service/?srv=1 вместо https://online.sbis.ru/auth/service/)

HTTP/1.1 401 Unauthorized
Server: nginx/1.4.4
Date: Fri, 11 Apr 2014 09:42:14 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=30
Cache-Control: must-revalidate, max-age=0
X-Path: internal;
X-QACheck: true
34
{"jsonrpc":"2.0","error":"Not authorized.","id":-1}
 
0
0
Оставьте свой отзыв:
ОТПРАВИТЬ