اطلاعات پایه
POST
/auth/get-token
- نام API: دریافت توکن احراز هویت
- آدرس:
/auth/get-token - متد: POST
پارامترهای درخواست
هدرها
| کلید | مقدار | توضیحات |
|---|---|---|
| Content-Type | application/json | نوع محتوای درخواست |
پارامترهای URL
| پارامتر | نوع | اجباری | توضیحات |
|---|---|---|---|
| consumer_key | string | بله | کلید مصرفکننده برای احراز هویت |
| consumer_secret | string | بله | رمز مصرفکننده برای احراز هویت |
پاسخهای ممکن
موفقیت (۲۰۰ OK)
{
"message": "Token generated successfully"
}
هدرها:
Authorization: توکن JWT تولید شده
خطاها
۴۰۰ Bad Request - پارامترهای ناقص
{
"code": "rest_missing_credentials",
"message": "Missing Consumer Key or Consumer Secret.",
"data": {
"status": 401
}
}
۴۰۱ Unauthorized - کلید یا رمز مصرفکننده نامعتبر
{
"code": "rest_invalid_consumer_key_or_secret",
"message": "Invalid Consumer Key or Secret.",
"data": {
"status": 401
}
}
مثالهای کد
cURL
curl -X POST \
'{base_url}/auth/get-token?consumer_key=ck_your_consumer_key&consumer_secret=cs_your_consumer_secret' \
-H 'Content-Type: application/json'
PHP
$ch = curl_init('{base_url}/auth/get-token?consumer_key=ck_your_consumer_key&consumer_secret=cs_your_consumer_secret');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json'
]);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
ASP.NET
using (var client = new HttpClient())
{
var response = await client.PostAsync(
"{base_url}/auth/get-token?consumer_key=ck_your_consumer_key&consumer_secret=cs_your_consumer_secret",
new StringContent("", Encoding.UTF8, "application/json")
);
var content = await response.Content.ReadAsStringAsync();
var result = JsonConvert.DeserializeObject(content);
}
.NET Core
public async Task GetToken()
{
var client = _httpClientFactory.CreateClient();
var response = await client.PostAsync(
"{base_url}/auth/get-token?consumer_key=ck_your_consumer_key&consumer_secret=cs_your_consumer_secret",
new StringContent("", Encoding.UTF8, "application/json")
);
var content = await response.Content.ReadAsStringAsync();
return Ok(JsonConvert.DeserializeObject(content));
}
Python
import requests
headers = {
'Content-Type': 'application/json'
}
params = {
'consumer_key': 'ck_your_consumer_key',
'consumer_secret': 'cs_your_consumer_secret'
}
response = requests.post('{base_url}/auth/get-token',
headers=headers,
params=params)
data = response.json()
Node.js
const axios = require('axios');
const response = await axios.post('{base_url}/auth/get-token', null, {
headers: {
'Content-Type': 'application/json'
},
params: {
consumer_key: 'ck_your_consumer_key',
consumer_secret: 'cs_your_consumer_secret'
}
});
const data = response.data;
Java
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.net.URLEncoder;
String consumerKey = URLEncoder.encode("ck_your_consumer_key", "UTF-8");
String consumerSecret = URLEncoder.encode("cs_your_consumer_secret", "UTF-8");
String url = String.format("{base_url}/auth/get-token?consumer_key=%s&consumer_secret=%s",
consumerKey, consumerSecret);
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse response = client.send(request,
HttpResponse.BodyHandlers.ofString());
String body = response.body();
Go
package main
import (
"fmt"
"net/http"
"net/url"
"io/ioutil"
)
func main() {
params := url.Values{}
params.Add("consumer_key", "ck_your_consumer_key")
params.Add("consumer_secret", "cs_your_consumer_secret")
client := &http.Client{}
req, _ := http.NewRequest("POST",
"{base_url}/auth/get-token?" + params.Encode(),
nil)
req.Header.Add("Content-Type", "application/json")
resp, _ := client.Do(req)
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
نکات مهم
- توکن تولید شده به مدت ۱ ساعت معتبر است.
- توکن در هدر
Authorizationبرگردانده میشود. - برای استفاده از سایر APIها، باید این توکن را در هدر
Authorizationارسال کنید. - استفاده از توکن در درخواستهای بعدی به این صورت است:
Authorization: Bearer {your_token} - توکن با استفاده از consumer_secret شما رمزنگاری شده است.
- پیش از استفاده از توکن آن را رمزگشایی و عدم انقضای آن را بررسی کنید.











