OAuth
Socraigh an OAuth sreafa
Fíordheimhníonn an t-úsáideoir go Wealth Reader, filleann sé ar do redirect_uri le code , agus déanann tú é a fhuascailt ar an JSON céanna leis an callback iframe.
Bain úsáid as an gcosán seo mura féidir leat an iframe (aip dhúchasach nó sreabhadh atreoraithe) a leabú. Más féidir le d'aip gréasáin iframe a shuiteáil, bain úsáid as Foreend iframe ina áit sin.
Mear-Rian
- Údaraigh an fearann le
access_type=oauth. - Gineann
nonce,state, aguscode_verifier. Ríomhannchallenge_code. Ionchódaíonnwr_confi heicsidheachúlach. Sábhálannnonceaguscode_verifier. - Atreoraigh an t-úsáideoir chun
https://oauth.wealthreader.com/oauth2/leis na paraiméadair sin. - Faigh
GETi doredirect_urilenonceaguscode. - Déan
POSThttps://oauth.wealthreader.com/token/agus faigh an payload ón mbanc.
1. Údaraigh an fearann
Ba chóir gurb é an domain an URL céanna a úsáidfidh tú mar redirect_uri agus mar url_callback.
curl --location 'https://api.wealthreader.com/domains/' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'method=add' \
--data-urlencode 'api_key=TU_API_KEY' \
--data-urlencode 'domain=https://example.com/oauth/success.php' \
--data-urlencode 'url_callback=https://example.com/oauth/success.php' \
--data-urlencode 'access_type=oauth' \
--data-urlencode 'tokenize=1'
Is féidir leat an cuntas fearainn a chlárú freisin ón Limistéar Custaiméirí trí chomhtháthú a roghnú OAuth.
2. Luachanna an dúshláin a ghiniúint
Cruthaigh trí shraith randamacha de 41 carachtar téacs alfa-uimhriúil (A-Za-z0-9) agus tiontaigh iad go heicsidheachúlach (bin2hex). Tá 82 carachtar téacs ag gach luach heicsidheachúlach.
| Luach | Conas a fhaightear é | Seoltar i |
|---|---|---|
redirect_uri |
Do URL fillte, an ceann céanna a d'údaraigh tú | Fiosrúchán agus POST /token/ |
nonce |
41 carachtar → heics | ceistiú; teacht ar ais sa GET |
state |
41 carachtar → heics | Fiosrúchán |
code_verifier |
41 carachtar → heics | POST /token/ amháin (ní sa cheist) |
challenge_code |
code_verifier SHA-256 (luach hais heicsidheachúlach) |
ceist, mar a challenge_code |
wr_conf |
→ Cumraíocht Roghnóra Heicsidhidheach JSON | Fiosrúchán |
wr_conf tacaíonn sé leis na réimsí céanna leis an Foreend iframe. Sampla sula mbogann tú go heicsidheachúlach:
{
"operation_id": "op_a1b2c3d4e5f6",
"entities_to_display": [],
"wait_full_response": true
}
Heicsidheachúlach den JSONsin:
7b226f7065726174696f6e5f6964223a226f705f613162326333643465356636222c22656e7469746965735f746f5f646973706c6179223a5b5d2c22776169745f66756c6c5f726573706f6e7365223a747275657d
Ní ghineann wr_conf a thiontú go heicsidheachúlach nonce, state, nó code_verifier. Cruthaítear na trí luach sin ar leithligh agus caithfidh tú iad a choinneáil (a bhaineann leis an nonce) go dtí an POST /token/.
Sampla i PHP, atá coibhéiseach leis an gceann a úsáidimid go hinmheánach:
function randomAlnum($length)
{
$alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
$value = '';
for ($i = 0; $i < $length; $i++) {
$value .= $alphabet[random_int(0, strlen($alphabet) - 1)];
}
return $value;
}
$nonce = bin2hex(randomAlnum(41));
$state = bin2hex(randomAlnum(41));
$code_verifier = bin2hex(randomAlnum(41));
$challenge_code = hash('sha256', $code_verifier);
$wr_conf = bin2hex(json_encode([
'operation_id' => 'op_a1b2c3d4e5f6',
'entities_to_display' => [],
'wait_full_response' => true,
]));
3. Atreoraigh an t-úsáideoir
Tóg an cheist agus atreorú. Sampla le luachanna atá comhsheasmhach lena chéile:
https://oauth.wealthreader.com/oauth2/?challenge_code=c725133644f703a5f069a09583fa981eb5b8820071a4450f8d47ff8b1c6a879a
&code_challenge_method=S256
&redirect_uri=https://example.com/oauth/success.php
&response_type=code
&state=73684148464b3778795873626d724e62734749724336685a7a687854336c317934524f516831316a45
&nonce=696d6a716d4a47746d714e52656562496f61786468765a30335a4b4a646d6c546c5339654e42586573
&wr_conf=7b226f7065726174696f6e5f6964223a226f705f613162326333643465356636222c22656e7469746965735f746f5f646973706c6179223a5b5d2c22776169745f66756c6c5f726573706f6e7365223a747275657d
Feiceann an t-úsáideoir an roghnóir bainc, fíordheimhníonn sé agus nuair a bheidh sé críochnaithe, Wealth Reader é ar ais chuig do redirect_uri.
4. Faigh an GET i redirect_uri
https://example.com/oauth/success.php?nonce=696d6a716d4a47746d714e52656562496f61786468765a30335a4b4a646d6c546c5339654e42586573
&code=1234567890abcdef1234567890abcdef1234567890a
Bain úsáid as an nonce chun an code_verifier a shábháil tú i gcéim 2 a aisghabháil. Murab é an nonce an ceann a d'eisigh tú, díbhe an t-iarratas.
5. Comhlánaigh an dúshlán
curl --location --request POST 'https://oauth.wealthreader.com/token/' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=authorization_code' \
--data-urlencode 'redirect_uri=https://example.com/oauth/success.php' \
--data-urlencode 'code=1234567890abcdef1234567890abcdef1234567890a' \
--data-urlencode 'code_verifier=6634413364504337675230375a624671644f644d42414241303037737374684f494877477649723433'
| Réimse | Luach |
|---|---|
grant_type |
authorization_code |
redirect_uri |
Díreach mar an gcéanna le céim 3 |
code |
An ceann leis an GET |
code_verifier |
An heics a ghin tú i gcéim 2 |
Má mheaitseálann na luachanna, is é an freagra JSON an bhainc (an scéimre céanna leis an callback an iframe): success, payload agus statistics (operation_id, token, code).
Sábháil token agus code má tá tú chun athnuachan le POST https://api.wealthreader.com/entities/níos déanaí.
Cód Samplach
Tá sampla i Java (JBang / Java 17) a ghineann na paraiméadair agus a chomhlánaíonn an dúshlán:
Má theastaíonn an sreabhadh céanna uait i dteanga eile, scríobh chugainn ag support@wealthreader.com.