【问题标题】:Trying to delete an image using cURL but getting NULL as response尝试使用 cURL 删除图像但得到 NULL 作为响应
【发布时间】:2015-06-29 18:19:16
【问题描述】:

我已经创建了一个自定义状态并测试它是否为 2,并在此基础上尝试删除产品的主图像。起初我不知道如果使用会话,cURL 需要特殊处理,我被重定向到管理员登录屏幕。这个修改应该进入文件admin/controller/catalog/product(当然使用VQMod)。直到现在我才收到NULL 的回复。

if((int) $this->request->post['status'] == 2) {
    if(isset($this->request->post['image'])) {
        $params = array(
            'path' => $this->request->post['image']
        );
        $defaults = array(
            CURLOPT_URL => $this->url->link('common/filemanager/delete', 'token=' . $this->session->data['token'], 'SSL'),
            CURLOPT_POST => true,
            CURLOPT_POSTFIELDS => $params,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_COOKIESESSION => true,
            CURLOPT_COOKIEJAR => 'cookie-jar',
            CURLOPT_COOKIEFILE => '/home/u32807/tmp'
        );
        $ch = curl_init();
        curl_setopt_array($ch, $defaults);
        $ouput = curl_exec($ch);
        if($output === false) {
            echo 'Curl error: ' . curl_error($ch);
            die();
        }
        else {
            var_dump($output);
            die();
        }
    }
}

我尝试将 CURLOPT_POSTFIELDS 注释掉,也尝试给它一个空数组,但仍然是 NULL。因此,我建立连接的方式一定有问题,但我不知道从哪里开始调试它。 Hewp pweeze! :/ OpenCart 版本是 1.5.6.4。

【问题讨论】:

  • 一个实际的文本空值('null',4 个字符),还是一个 php 空值?
  • var_dump($output) 部分产生 NULL,而不是 string(4) "null"
  • 然后那个 url 返回了一个空的响应体。

标签: php session curl opencart


【解决方案1】:

你需要为 curl 再添加一个部分,即

CURLOPT_CUSTOMREQUEST=>'删除',

检查我的删除功能:

公共函数 curl_delete_function($mypath, $json='')

{

$url =$this->__url.$mypath;

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$url);

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");

curl_setopt($ch, CURLOPT_POSTFIELDS, $json);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);

$result = json_decode($result);

curl_close($ch);


return $result;

}

【讨论】:

    猜你喜欢
    • 2016-01-09
    • 2017-09-14
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    • 1970-01-01
    • 1970-01-01
    • 2020-01-23
    • 2013-08-02
    相关资源
    最近更新 更多