第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用基于 cookie 的身份驗(yàn)證從 REST API 獲取用戶

如何使用基于 cookie 的身份驗(yàn)證從 REST API 獲取用戶

PHP
絕地?zé)o雙 2022-12-30 17:18:25
快速上下文:我正在評估為我們的 WIP 無外設(shè) WordPress 站點(diǎn)的一些自定義 restful 端點(diǎn)進(jìn)行身份驗(yàn)證的可能解決方案。我想要實(shí)現(xiàn)的是is_user_logged_in使用基于 cookie 的身份驗(yàn)證在我的自定義端點(diǎn)中返回 true。這是我當(dāng)前的設(shè)置,這是我嘗試過的。我有以下內(nèi)容functions.php// create an endpoint for getting a noncefunction get_nonce() {    return new WP_REST_Response(array('nonce' => wp_create_nonce( 'wp_rest' )));}add_action( 'rest_api_init', function () {    register_rest_route('my-site', 'nonce', array(        'methods' => 'GET',        'callback' => __NAMESPACE__ . '\get_nonce'    ));} );function get_orders() {    if ( !is_user_logged_in() ) {        return new WP_Error( 'not_authorized', 'You are not logged in', array('status' => 401) );    }    $orders = // ...    return new WP_REST_Response($orders);}add_action( 'rest_api_init', function () {    register_rest_route( 'my-site', 'orders', array(        'methods' => 'GET',        'callback' => __NAMESPACE__ . '\get_orders',    ));} );因此,總而言之,這會創(chuàng)建兩個端點(diǎn):/wp-json/my-site/nonce生成隨機(jī)數(shù)/wp-json/my-site/orders提取一些用戶數(shù)據(jù)我所做的是:打電話GET /wp-json/my-site/nonce來搶隨機(jī)數(shù)稱呼GET /wp-json/my-site/orders?_wpnonce=thepreviousnonce我得到的是這個錯誤:{  "code": "rest_cookie_invalid_nonce",  "message": "Cookie nonce is invalid",  "data": {    "status": 403  }}我只是使用瀏覽器和 URL 來發(fā)出請求,并且我已經(jīng)檢查過每個請求中是否包含 cookie。我錯過了什么?為什么我得到 403?
查看完整描述

1 回答

?
拉莫斯之舞

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超10個贊

您生成的隨機(jī)數(shù)無效。在 rest 上下文中制作 nonce 是行不通的,因?yàn)槟且残枰粋€ nonce!它返回的是一個注銷的用戶隨機(jī)數(shù)。如果您需要基于令牌的身份驗(yàn)證,我推薦JWT wp rest auth 文檔


查看完整回答
反對 回復(fù) 2022-12-30
  • 1 回答
  • 0 關(guān)注
  • 126 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號