Javascript XMLHTTPRequest发送数据
我想用WordPress在数据库中添加帖子。我试过这个密码 wordpress\wp content\themes\twentyeven\index.php:Javascript XMLHTTPRequest发送数据,javascript,php,json,wordpress,rest,Javascript,Php,Json,Wordpress,Rest,我想用WordPress在数据库中添加帖子。我试过这个密码 wordpress\wp content\themes\twentyeven\index.php: 快速添加帖子 创建帖子 试试这个 添加您的用户名和密码 你的functions.php代码在哪里?你想要文件的所有代码吗?我收到这个错误{code:“rest\u cannot\u create”,“message:“抱歉,您不允许以此用户身份创建帖子。”,“data:{“status”:401}}标题中的用户名和密码在哪里?我如何添
快速添加帖子
创建帖子
试试这个
添加您的用户名和密码
你的functions.php代码在哪里?你想要文件的所有代码吗?我收到这个错误<代码>{code:“rest\u cannot\u create”,“message:“抱歉,您不允许以此用户身份创建帖子。”,“data:{“status”:401}}标题中的用户名和密码在哪里?我如何添加它们?抱歉,我忘了告诉您我在functions.php
wp\u localize\u脚本('main\u js',magicalData',array)中添加了此代码('nonce'=>wp_create_nonce('wp_rest'));
在wp_enqueue_脚本('main_js',get_theme_file_uri('/assets/js/main.js'),NULL,1.0,true)之后;
我更正了问题中的错误:Base64未在HTMLButtonElement中定义。请检查如何在JavaScriptI usedwindow.btoa中转换Base64(“username:password”)
而不是Base64.encode('username:password'))
但它不起作用,并且没有控制台错误。您必须更改用户名值和密码值。是否根据需要进行检查?
quickAddButton = document.querySelector("#quick-add-button");
if (quickAddButton) {
quickAddButton.addEventListener("click", function() {
var OurPOSTData = {
"title": document.querySelector('.admin-quick-add [name="title"]').value,
"content": document.querySelector('.admin-quick-add [name="content"]').value,
"status": "publish",
}
//alert (JSON.stringify(OurPOSTData));
var createPost = new XMLHttpRequest();
createPost.open('POST', 'http://localhost/wordpress/wp-json/wp/v2/posts');
createPost.setRequestHeader("X-WP-Nonce", magicalData.nonce);
createPost.setRequestHeader("Content-Type", "application/json; charset=utf-8");
createPost.setRequestHeader('Authorization', 'Basic ' + window.btoa("username:password"));
createPost.send(JSON.stringify(OurPOSTData));
});