Ошибка аутентификации при вызове службы событий Orange Product Order

Мы реализуем API бизнес-приложений Orange. Для этого нам нужно позвонить в службу Orange. Эта служба имеет аутентификацию по типу носителя (Oauth2). Я могу успешно получить токен доступа, и срок действия токена доступа составляет 90 дней. Используя последний токен доступа, я попытался вызвать службу Orange, отправив токен доступа в заголовке, но каждый раз получая ошибку несанкционированного доступа.

Here is code

public static function sendEventProductOrder($eventProductOrdering) {

$jsonMapper = new JsonMapper();

$opts = array('http' => array('method'=>'POST',
'header'=>'Content-type: application/x-www-form-urlencoded\r\n'.'Authorization: Bearer xxxxxxxxxxxxxxxxx\r\n',
'content' => json_encode($jsonMapper->unmap($eventProductOrdering)),

));

$context = stream_context_create($opts);

if (($stream = fopen("https://api.orange.com/mba/productordering/v2/event", 'r', false, $context)) !== false) {
$content = stream_get_contents($stream);
$header = stream_get_meta_data($stream);
fclose($stream);
return HelperMisc::isEqualIgnoreCase($header['wrapper_data']['0'], 'HTTP/1.1 201 Created');
}

return false;
}

Может ли кто-нибудь помочь мне в этом?

Спасибо за помощь!

1

Решение

Можете ли вы попробовать изменить цитату ' в "? Как это:

$requestArray = [
'name' => 'User',
'age'  => 100
];

'header'  => "Content-type: application/x-www-form-urlencoded\r\n" .
"Authorization: Bearer xxxxxxxxxxxxxxxxx\r\n",
'content' => http_build_query($requestArray)

Так как \r\n не работает внутри одной цитаты 'отправляет «как есть»

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]