Chcę sfetchować cokolwiek przez api allegro, ale nic nie rozumiem z dokumentacji, która jest napisana pod PHP. Mam client_secret_
i client_id
, ale nie cholery nie mam pojęcia, co z tym zrobić, żeby dostać token. Nie chcę nic postować, tylko pobierać dane. Czy ma ktoś jakiś przykład jak taki kod może wyglądać?
To nie Allegro, nie PHP, tylko OAuth. Aby wykonać jakiekolwiek zapytanie musisz mieć access token, a ten pobierasz robiąc POST.
@Charles_Ray: mozliwe, ze masz racje bo niedawno o tym doczytalem. tylko jakie parametry do tego wrzucic, jakie headery itd.?
Musisz założyć konto developerskie na Allegro i tam zarejestrować aplikację. Tam wygeneruje Ci wszystkie potrzebne klucze.
Osobiście nigdy nie miałem styczności z API Allegro, ale wszystkie inne API OAuthowe tak właśnie działają.
Edit: o, to będzie tutaj:
Jak tak patrzę to tu jest praktycznie wszystko: https://developer.allegro.pl/auth/#clientCredentialsFlow
Kwestia uzupełnienia danych.
@Charles_Ray @tsz: jest jakiś postęp bo insomnia przepchnęła mi zapytanie. jedyny header jaki dałem to zdekodowane clientId i clientSecret
ale co jest dziwne, to już mój odrzuca mi mój kod
const getAccessToken = async () => {
const clientId = '58f2e[...]7a1c6ea2'
const clientSecret = '5JvGYHLpFySs[...]2vK8v6oHQ8eepThkxSCp'
const auth = btoa(`${clientId}:${clientSecret}`)
const requestUrl = 'https://allegro.pl/auth/oauth/token?grant_type=client_credentials'
const response = await fetch(requestUrl, {
method: 'POST',
headers: {
'Authorization': `Basic ${auth}`,
}
})
return response
}
console.log(getAccessToken())
i wypluwa coś takiego:
Próbowałem dodać różne headery, które tylko znalazłem w sieci, ale nic nie działało.
To jeszcze o CORS-ie poczytaj :)
@Charles_Ray: no dobra, cors corsem, ale czemu w insomnii nie ma żadnego problemu? są tam jakieś defaultowe headery, czy jak?