Похоже, что запрашиваемому API требуется заголовок User-Agent
.
Попробуйте выполнить команду curl
с флагом --verbose
, чтобы увидеть заголовки запросов, отправляемых curl
. Вы получите что-то вроде этого:
$ curl --verbose -X POST https://www.dbs.com/sandbox/api/sg/v1/oauth/authorize --header "Content-Type:application/json" --header "clientId:clientId3" -d '{ "client_id":"demo", "client_assertion":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJEQlMiLCJpYXQiOjE1NTUwNTg0OTYsImV4cCI6MTU1NTE0NDg5Niwic3ViIjoiSnd0IFNpZ25lZCBUb2tlbiBmb3IgRGVtZSBBcHAgUGFydG5lciBUb2tlbiBmbG93IiwiUEFSVFlfVFlQRSI6MywiQ0xJRU5UX0lEIjoiY2xpZW50SWQzIiwiQ0xJRU5UX1RZUEUiOiJQYXJ0bmVyIiwiQUNDRVNTIjoiQ29tbXVuaXR5IiwiU0NPUEUiOiJSRUFEIiwiYXVkIjoiUGFydG5lcnMiLCJqdGkiOiJTdGFuZGVyZEpXVFRva2VuMSJ9.Pl0YwiAs1UGzIdZXWbnFUGmBDfcKAlkZEcgYd_1NDo2co_6xziut1i0DTwcmcaKDlp7IuOOK1EXYKCmw0qlIu7ciM0DYmdD7M36VbC1TzTx-rVrUJmerRjh_EYY-S4txeCGZtZB0ow6bkgqh6GOz-uwcY7DOg90Da2qVtIk7seQtWi_709UEaNr3XTTorEiIaEqdUN3mmODpLTyrhpzXhop_JIGN1XzNZOfw-vM6DMhL_AiGjDZcvhbo9zPBmbmpECPudfXmtYxK2_4zTVtPDNxH_UUtOVza2MDdIBJCTxY4LQm7dfH-y3grRx6-KyBdUcrchTdqVPS1xATYCGo3QA" }'
> POST /sandbox/api/sg/v1/oauth/authorize HTTP/1.1
> Host: www.dbs.com
> User-Agent: curl/7.45.0
> ...
Итак, затем добавьте заголовок User-Agent
в ваш php-код (любое значение будет работать):
curl_setopt($ch, CURLOPT_USERAGENT, 'curl/7.45.0');
Ответ ($result
) будет выглядеть так:
{
"access_token" : "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiIDogImh0dHBzOi8vY2FwaS5kYnMuY29tIiwiaWF0IiA6IDE1NTUwNjQ0MTE2MDQsICJleHAiIDogMTU1NTA2ODAxMTYwNCwic3ViIiA6ICJaR1Z0Ync9PSIsInB0eXR5cGUiIDogMywiY2xuaWQiIDogImNsaWVudElkMyIsImNsbnR5cGUiIDogIjIiLCAiYWNjZXNzIiA6ICIxRkEiLCJzY29wZSIgOiAiUkVBRCIgLCJhdWQiIDogImh0dHBzOi8vY2FwaS5kYnMuY29tL2FjY2VzcyIgLCJqdGkiIDogIjU5NjQxOTE1ODUzNzAwMjY5OTMiIH0.gij_4TyE6IX8mziHwK2eZaTXPtDDAnZ3nKAcKJYQJxs",
"refresh_token" : "G/aZD0gOEoTuWETLSw+vt4OWIs8HFX/50psx2ShSaig=",
"party_id" : "ZGVtbw==",
"expire_in" : "1555068011604"
}
HTTP код ответа: 200