javascript - check_ajax_referer 返回 -1
问题描述
我正在为 wordpress 构建一个自定义 API 端点,当尝试使用 nonce 保护它时,我无法让 check_ajax_referer() 返回除-1之外的任何内容。
我正在使用 fetch 来调用我的 API。
这是我的 javascript 前端:
var nonce = '<?php echo wp_create_nonce('wp_rest'); ?>';
...
fetch('https://sdfsdf.dk/wp-json/bookings/v1/book/', {
method: "POST",
headers: {"Content-type": "application/json","X-WP-Nonce" : nonce},
body: raw
})
在我的 PHP 后端,我有这个:
function post_draft_booking( WP_REST_Request $request ) {
check_ajax_referer('wp_rest');
Do something...
}
add_action( 'rest_api_init', function () {
register_rest_route( 'bookings/v1', '/book/', array(
'methods' => 'POST',
'callback' => 'post_draft_booking',
'permission_callback' => function () {
return current_user_can( 'edit_others_posts' );
}
) );
} );
运行 javascript 时,控制台中返回 -1。
我在这里做错了什么?
BR克雷斯顿
解决方案
推荐阅读
- javascript - 如何通过具有未知父名称的二级属性过滤json?
- python-3.x - 使用 psycopg2 将列插入 PostgreSQL 时,为什么第一列显示为单词“数据”?
- rest - 无法使用 Angular 7 发布:标题不起作用
- python - 如何删除 DataFrame 的特定行以生成嵌套 JSON
- javascript - 为什么'new'关键字不会改变控制台中显示的构造函数
- javascript - 如何在javascript中创建减法函数
- regex - 用于传递 URL 和失败 CIDR 掩码的正则表达式
- java - log4j2.properties 文件不考虑,而 log4j.properties 文件是
- c# - 直接调用 Azure Durable Functions 的活动和子编排
- python - 如何同步运行python函数?