如何使用REST API安全地创建自定义帖子?

时间:2019-12-06 作者:Alt C

我是新手。弄清楚如何使用它。我正试图通过填写前端表单来创建自定义帖子。我正在表单中使用ajax按钮。此按钮触发wp\\u remote\\u post()。我有以下疑问。

我有一张正面的表格。是否可以通过填写来创建自定义帖子,并在同一网站上创建自定义帖子

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

我有一张正面的表格。是否可以通过填写来创建自定义帖子,并在同一网站上创建自定义帖子?

是的,如果你有show_in_rest注册帖子类型时将其设置为true,那么您就已经有了REST API端点来列出和创建它们,并且它们也会受到注册帖子类型时设置的功能的限制

当我访问一个网站时,他们说标题授权使用不安全?是这样吗?

我不知道你在这里指的是什么。

用户名和密码已添加到标头身份验证。如果没有这个,是否可以发送请求?

我怀疑你真正的意思是基本的授权。要使用基本身份验证,您需要安装一个插件,因此您可以在没有该插件的情况下发出请求。Oauth/Basic-Auth/etc都需要插件,并且在不同的站点/应用程序之间进行对话时使用,但您似乎对此不感兴趣。

如果您有一个登录cookie集,那么您只需要一个nonce。REST API手册对此有详细说明。

基本上,用户必须登录才能填写表单,所以有没有办法获得用户名和密码来提出请求?

这是不必要的,也是危险的,你不需要用户密码,就像管理区不会在你每次进入新页面时都要求你输入密码一样

rest API post请求能否仅限于该表单?说有人在外面做不到?

HTTP请求不是这样工作的,从来没有这样过。即使您不使用AJAX,我也可以curl 在给定正确信息的情况下,在终端中复制它的命令。

服务器接收到一个请求,它永远无法真正确定是什么生成了它。这适用于所有请求,无论其性质如何。

听起来好像你有一个你没有分享的具体问题。如果用户已登录并且这是一个经过身份验证的请求,那么假设您的站点使用HTTPS,我认为没有必要担心