我看別人說header頭可以傳遞token值 請問是怎么傳遞的呢?能舉個例子嗎
6 回答

萬千封印
TA貢獻1891條經(jīng)驗 獲得超3個贊
在瀏覽器中,你可以使用 XMLHttpRequset 在頭部傳遞傳遞token值
var xhr = new XMLHttpRequest();
xhr.open('get','/index');
xhr.setRequestHeader('token', 'xxxxx'); // xxxx 就是你的token值
xhr.send();
// xhr.getResponseHeader('token') // 可以獲取從服務器帶來的 token值
而在服務器端,以express舉例
const app = new express();
app.get('/index', (req, res) => {
req.header('token') // 獲取從瀏覽器端傳送過來的token 值
res.status(200);
res.header('token', 'xxxxx'); // xxxxx 就是你的token值
res.send('hello world');
});

當年話下
TA貢獻1890條經(jīng)驗 獲得超9個贊
我做sso就直接用header傳的token checksum等數(shù)據(jù)。
傳輸(curl時):
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json', 'xxxx你定義的header數(shù)據(jù)名 '. 'xxxx您要傳的token/checksum等等'));
獲取:
$headers = array ();
foreach ( $_SERVER as $name => $value ) {
if (substr ( $name, 0, 5 ) == 'HTTP_') {
$headers [str_replace ( ' ', '-', ucwords ( strtolower ( str_replace ( '_', ' ',substr ( $name, 5 ) ) ) ) )] = $value;
}
}
//$headers就是個數(shù)組了。

隔江千里
TA貢獻1906條經(jīng)驗 獲得超10個贊
header包含的數(shù)據(jù)格式是key-value
在頁面可以使用ajax設置值:xhr.setRequestHeader('k', 'v');
- 6 回答
- 0 關(guān)注
- 1121 瀏覽
添加回答
舉報
0/150
提交
取消