hello
I tried to convert curl request to laravel 10 http client format.
curl -X POST -d "grant_type=client_credentials" -d "scope=connect.api.read connect.api.write"
-u "{client_id}:{client_secret}"
https://api.connect.domain.com/as/token.oauth2
to
$basic_data = config('services.elements.clientID'). ':' . config('services.elements.secretID');
$basic = base64_encode($basic_data);
$response = Http::
withHeaders([
'Authorization' => 'Basic ' .$basic,
'content-type'=> 'application/x-www-form-urlencoded'
])
->post('https://api.connect.domain.com/as/token.oauth2',[
'grant_type'=>'client_credentials',
'scope'=>'connect.api.read'
]);
dd($response);
-- Api documentation gives example in Javascript:
const client = '...' // client id;
const secret = '...' // secret value
const basic = btoa(`${client}:${secret}`);
const opts = {
headers: {
'Authorization': `Basic ${basic}`,
'user-agent': 'NodeJs',
'Content-type': 'application/x-www-form-urlencoded'
},
method: 'POST'
};
Question: javascript
const basic = btoa(`${client}:${secret}`); is it same as
$basic_data = config('services.elements.clientID'). ':' . config('services.elements.secretID');
$basic = base64_encode($basic_data); ??
--> Api gives me error " 400" ?
reasonPhrase: "Bad Request"
-statusCode: 400.
Thanks Mika.