【发布时间】:2013-12-31 02:24:43
【问题描述】:
我正在尝试使用 codeigniter 在我的 API 中实现一个简单的图像上传功能。到目前为止,这是我的代码:
function addpicture_post()
{
$config['upload_path'] = './upload/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '10000';
$config['max_width'] = '1024';
$config['max_height'] = '768';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload() )
{
print_r($this->upload->display_errors('', ''));
print_r($this->upload->data());
$info = 'not working';
$this->response($info);
}
}
}
当我使用apigee (https://apigee.com/console/others) 尝试时,如果我没有设置任何参数,我有以下消息:
HTTP/1.1 200 正常 状态: 200 日期: 格林威治标准时间 2013 年 12 月 12 日星期四 15:30:16 内容长度: 367 活着: 超时=15,最大值=100 内容类型: 应用程序/json X-Powered-By: PHP/5.3.5-1ubuntu7.11 服务器: Apache/2.2.17 (Ubuntu)
您没有选择要上传的文件。
到目前为止一切顺利。但是,当我尝试上传图像文件时(在远地点使用文件附件参数,我将其命名为“userfile”),我得到以下响应:
测试网址无效
我已经为此苦苦挣扎了几个小时,我试图查看代码点火器的文档,但不幸的是它与 API 无关,而且我无法弄清楚如何在不使用形式。
我不太确定问题是来自我用来测试它的服务、apigee,还是来自代码。最后,我的目标是在我正在编码的 iphone 应用程序中实现此功能,但我希望能够在尝试将其包含在我的应用程序中之前测试该功能。
任何人都可以给我有关 API 中文件上传的信息吗?以及如何正确测试它?谢谢。
【问题讨论】:
-
提供
view的代码 -
除非你在做一些时髦的事情,否则我很确定你的上传路径不需要有 。 所以它应该是 /upload i> 不是 ./upload
-
我已将 ./upload/ 更改为 /upload/,但仍然无法正常工作。我实际上没有任何看法,因为我只是在使用 Apigee 进行尝试,然后在 iOS 应用中实现它。
标签: php api codeigniter