wp rest api 授权方法步骤(使用JWT Authentication插件)

环境:wordpress 4.7 以上,WP自带的 rest api v2

目标:使用javascript与wp rest api交互,其中编辑、新增、删除等需要Oauth认证授权

方法:

  步骤一: 安装wp插件 jwt-authentication-for-wp-rest-api

  步骤二: 根据jwt插件文档,修改.htaccess

  一般服务器(.access文件配置):

RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

  步骤三: 根据jwt插件文档,修改wp-config.php

define(‘JWT_AUTH_SECRET_KEY‘, ‘your-top-secrect-key‘);
define(‘JWT_AUTH_CORS_ENABLE‘, true);

  其中的 ‘your-top-secrect-key‘ 可以参考https://api.wordpress.org/secret-key/1.1/salt/中的参数值,如:

define(‘JWT_AUTH_SECRET_KEY‘, ‘=i``G+H|} fSLR f,$8~&N#paMfPzrk6,e]Dg.-<|jip(H8C%) ^uO/ l~$3},fC‘);

  步骤四:在js中请求token,然后在编辑等操作时在header中附带上token值

$.ajax({
  url:"http://localhost/wp-json/jwt-auth/v1/token",
  method:"POST",
  data:{
    username:"admin",
    password:"123456"
  },
  success:function(res){
    console.log(res);
    Token = res.token;
    $.ajax({
      url:"http://localhost/wp-json/wp/v2/posts/1",
      method:"POST",
      beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer " + Token);
      },
      data:{
        "title":"hello api"
      },
      success:function(res){
        console.log(res);
      },
      error:function(res){
        console.log(res);
      }
    });
  },
  error:function(res){
    console.log(res);
  }
});

  

时间: 2024-10-13 04:46:32

wp rest api 授权方法步骤(使用JWT Authentication插件)的相关文章

扩展 OpenStack 的 REST API 的方法

以Nova REST API为例, 你应该按照以下步骤来扩展 Nova REST API (使用 类nova.api.openstack.compute.contrib.floating_ips.Floating_ips 作为例子) 1)    创建一个新的extension 子类. Extension子类应该派生于"nova.api.openstack.extensions ExtensionDescriptor" 以 Floating_ips 类为例 2)    在 Nova AP

百度语音识别REST API使用方法(含C++代码)——不需要集成SDK的方法

上一篇文章http://blog.csdn.net/zpf8861/article/details/32322089已经介绍了百度语音识别REST API的使用步骤和功能介绍,这篇文章主要通过一个实例代码来展示如何使用该API. 本文代码为C++版,可以用于C环境的应用开发中,下面介绍其中重要的代码. 下面代码是一个可以使用该方式进行语音识别功能的实例代码 #include <stdio.h> #include <stdlib.h> #include "curl/incl

百度语音识别REST API使用方法(含JAVA代码)——不需要集成SDK的方法

上一篇文章http://blog.csdn.net/zpf8861/article/details/32322089已经介绍了百度语音识别REST API的使用步骤和功能介绍,这篇文章主要通过一个实例代码来展示如何使用该API. 本文代码为JAVA版,可以用于Android应用开发中,下面介绍其中重要的代码. 获得Token 其中apiKey和secretKey是从百度开放平台获得的,获得方法参看上一篇文章. private static void getToken() throws Excep

【.NET Core项目实战-统一认证平台】第十二章 授权篇-深入理解JWT生成及验证流程

原文:[.NET Core项目实战-统一认证平台]第十二章 授权篇-深入理解JWT生成及验证流程 [.NET Core项目实战-统一认证平台]开篇及目录索引 上篇文章介绍了基于Ids4密码授权模式,从使用场景.原理分析.自定义帐户体系集成完整的介绍了密码授权模式的内容,并最后给出了三个思考问题,本篇就针对第一个思考问题详细的讲解下Ids4是如何生成access_token的,如何验证access_token的有效性,最后我们使用.net webapi来实现一个外部接口(本来想用JAVA来实现的,

SoC嵌入式软件架构设计之六 :API设计方法

在嵌入式系统中,驱动都是以API的方式提供给应用进行调用.这里介绍嵌入式系统的API设计和管理方法. 驱动在系统中会按模块进行分类,例如按键驱动.LCD驱动.文件系统.card驱动.I2C驱动等等:每个模块又有多个接口,例如LCD驱动有光标定位.画点.画直线等,而文件系统有fread.fwrite.fseek.fopen等接口.以下举例将以文件系统的fopen为例,工具链为mips. 一.API设计方法 1. 驱动接口声明:extern FILE * fopen(const char * pat

使用多字节字符集的跨平台(PC、Android、IOS、WP)编码/解码方法

随着移动端的发展,跨平台已成为通讯架构设计的重要考虑因素,PC.Android.IOS.WP等跨多平台间的数据通讯,必然要解决字符编码/解码的问题. 多字节字符集MBCS不是跨平台的首选字符集,面向跨平台.国际化的推荐字符集肯定是UNICODE. 写VC的人都知道,在以前VC++6.0中默认的字符集是多字节字符集,而VS2005及以后默认的字符集是Unicode,VS2013中默认不再对多字节字符串进行支持. 但对很多较早的服务端项目,依然使用的是多字节字符集,不过使用多字节字符集依然可以实现跨

MySQL创建用户与授权方法

MySQL创建用户与授权方法 作者: 字体:[增加 减小] 类型:转载 时间:2012-11-10我要评论 MySQL中创建用户与授权的实现方法,对于刚开始接触mysql的朋友可以参考下 注:我的运行环境是widnows xp professional + MySQL5.0 一, 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以

WP调用api

private string GetText() { string resultString = string.Empty; HttpWebRequest request = HttpWebRequest.CreateHttp("http://www.baidu.com"); request.Method = "GET"; request.BeginGetResponse((IAsyncResult result) => { HttpWebRequest we

SoC嵌入式软件架构设计之六:API设计方法

在嵌入式系统中,驱动都是以API的方式提供给应用进行调用.这里介绍嵌入式系统的API设计和管理方法. 驱动在系统中会按模块进行分类,例如按键驱动.LCD驱动.文件系统.card驱动.I2C驱动等等:每个模块又有多个接口,例如LCD驱动有光标定位.画点.画直线等,而文件系统有fread.fwrite.fseek.fopen等接口.以下举例将以文件系统的fopen为例,工具链为mips. 一.API设计方法 1. 驱动接口声明:extern FILE * fopen(const char * pat