Yii 框架 - 使用 Rest Client 上传图片

Posted

技术标签:

【中文标题】Yii 框架 - 使用 Rest Client 上传图片【英文标题】:Yii framework - Image Upload Using Rest Client 【发布时间】:2013-06-28 14:05:28 【问题描述】:

我是 Yii 框架的新手。在我的项目中,我有一个名为“UserController”的控制器,并且还有关联的模型“User”和使用 Gii 创建的相关视图文件。在“/user/create”页面上,我正在上传用户个人资料图片。在创建页面上一切正常。

但是,当我尝试使用 REST 客户端(我使用的是 Chrome - 高级 REST 客户端)上传图片时,图片无法上传。如果我上传除 REST 客户端表单上的图片之外的所有其他文本(例如电子邮件、名字等)详细信息,则成功创建用户,但是当我尝试上传图片以及其他详细信息时,它会失败。实际上,当我尝试调试时,我才知道在从 REST 客户端提交带有图像的表单时,它进入了“公共函数 actionCreate()”函数,但没有进入 if(isset($_POST['U​​ser '])) // 代码 条件。但是,如果我从“/user/create”页面上传图片和详细信息,它就会成功。

再一次,我想说的是,图像是从使用 Yii 创建的实际网页成功上传的,但是尽管将 Content-type 设置为“multipart/form-data”,但无法使用 REST 客户端上传图像。

谢谢 普拉齐

【问题讨论】:

您应该检查发送到网络服务器的网页和 REST 客户端之间的标头的差异。 能否参考我的回答下面是链接***.com/questions/20676206/… 【参考方案1】:

也许您的 REST 客户端正在通过 GET(而不是 POST)方法发送数据?

【讨论】:

【参考方案2】:

问题已解决:

我尝试了其他名为“Postman”的 chrome REST 客户端扩展,并且能够非常轻松地从该客户端上传图像。我想我无法使用“高级 REST 客户端”来上传图片,但这个“邮递员 REST 客户端”真的超级酷且易于使用。

以下是此 REST 客户端的链接: https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm?hl=en

【讨论】:

以上是关于Yii 框架 - 使用 Rest Client 上传图片的主要内容,如果未能解决你的问题,请参考以下文章

Yii REST POST 在 POSTMAN 中不工作,但在框架中工作

django.test.client 上的 Django rest 框架导入错误

远程服务器上的 YII 2 REST CORS 问题

Yii2.0框架Restfull API开发攻略

如何让 Yii2 rest api 默认使用 json 输出?

Yii2 Rest API 承载认证