WP API Media create() 所需参数
Posted
技术标签:
【中文标题】WP API Media create() 所需参数【英文标题】:WP API Media create() required parameters 【发布时间】:2017-09-25 12:21:42 【问题描述】:我正在尝试使用 WP API v2 (WP 4.7.3) 发出发布/上传新媒体的请求。我正在使用 Node 客户端 (https://github.com/WP-API/node-wpapi) 来处理这个问题。
由于我只收到错误 400 rest_upload_no_data
,因此我正在尝试查找执行此操作所需的字段。
我在做什么:
wp.media()
.file( uri )
.create(
title: 'My awesome image',
alt_text: 'an image of something awesome',
caption: 'This is the caption text',
description: 'More explanatory information',
status: 'publish'
)
.then(function( response )
...
我查看了文档 (https://developer.wordpress.org/rest-api/reference/media/),但看不到需要或不需要哪个参数。
有什么帮助吗?
【问题讨论】:
【参考方案1】:问题可能是.file()
方法需要缓冲区或本地文件系统路径(如果在节点中运行)或来自输入字段的文件对象(在浏览器中运行时)。 URI 字符串不能解释为图像,因此没有发送图像数据,导致“无数据”错误。
如果您在浏览器中运行此库,则可以使用输入的 files 对象发送图像:
var data = document.getElementById( 'file-input' ).files[0];
wp.media().file( data )...
WordPress REST API(据我所知)不支持侧载图像,因此要上传远程图像,您首先必须检索它,然后自己将该数据转发到 API。
编辑后包含指向 node-wpapi 库文件上传文档的链接:
http://wp-api.org/node-wpapi/guides/2016/08/15/create-a-post-with-featured-media.html#client-side-media-handling http://wp-api.org/node-wpapi/using-the-client/#uploading-media【讨论】:
我实际上已经完成了所有这些。进一步挖掘这个问题,我正在考虑 React Native 环境中的超级代理问题。我在那里打开了一个问题:github.com/visionmedia/superagent/issues/1217以上是关于WP API Media create() 所需参数的主要内容,如果未能解决你的问题,请参考以下文章