Я пытаюсь сделать POST-запрос к API GETResponse (https://apidocs.getresponse.com/v3/case-study/adding-contacts) с thephpleague / oauth2-client и adespresso / oauth2-getresponse в качестве провайдера, например так:
$data = [
'email' => $email,
'campaign' => [
'campaignId' => $campId
]
];
$request = $this->provider->getAuthenticatedRequest(
'POST',
'https://api.getresponse.com/v3/contacts',
$this->getMyAccessToken(),
$data
);
$response = $this->provider->getParsedResponse($request);
Iтакже пробовал эту передачу значения типа содержимого application / json в заголовках все безрезультатно.
$data = [ 'email' => $email, 'campaign' => [ 'campaignId' => $campId ] ];
`$options['body'] = json_encode($data);
$options['headers']['Content-Type'] = 'application/json';
$options['headers']['access_token'] = $this->getMyAccessToken();
$request = $this->provider->getAuthenticatedRequest(
'POST',
'https://api.getresponse.com/v3/contacts',
$options
);
$response = $this->provider->getParsedResponse($request); `
Однако функция getParsedResponse в обоих подходах возвращает следующее:
League \ OAuth2 \ Client \ Provider \ Exception \ IdentityProviderException (400) UnsupportedContentTypeheader.