Bad Request 400 Curl Проблема - PullRequest
1 голос
/ 15 июня 2011

Кажется, что у меня проблема, когда я пытаюсь отправить запрос на сервер в php. Запрос HTTP API выглядит примерно так:

https://www.quickbase.com/db/basddzvkb?act=API_DoQuery&ticket=6_bsdaaap8y_by5bx6_b_crji7wwewew3b9asd5zibmf8jh3bhsdsddvhruc9csquzdg9bzw4&apptoken=cgsb5xdwehusdaaagcjs222dz9&fmt=structured&query={'22'.ct.'test'}

У меня есть следующая часть моего кода в php, где я считаю, что происходит ошибка:

else
    {
        $ch = curl_init($input);
        curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        //curl_setopt($ch, CURLOPT_POST, true);
        $this->input = $input;

    }

    $r = curl_exec($ch);

    print_r(curl_getinfo($ch));


    if($return_xml) {
        $response = new SimpleXMLElement($r);
    }

Это то, что я получаю из оператора print_r (curl_getinfo ($ ch)):

[content_type] => text / html [http_code] => 400 [header_size] => 129 [request_size] => 251 [filetime] => -1 [ssl_verify_result] => 20 [redirect_count] => 0 [total_time] => 0,281 [namelookup_time] => 0 [connect_time] => 0,063 [pretransfer_time] => 0,188 [size_upload] => 0 [size_download] => 20 [speed_download] => 71 [speed_upload] => 0 [download_content_length] => 20 [upload_content_length] => 0 [starttransfer_time] => 0,281 [redirect_time] => 0 [certinfo] => Array ()

Также, как вы можете видеть, я прокомментировал curlopt_post, потому что он вызывал проблемы, когда я выполнял другой запрос API. Я не уверен, какое может быть решение, и я некоторое время смотрю на эту проблему, надеюсь, кто-то может мне помочь, спасибо :)

1 Ответ

1 голос
/ 17 июня 2011

Datasage помог мне придумать этот ответ, вам нужно добавить urlencode ("{'22'.ct.'test'}");к этой части кода, и он будет производить правильный вывод.

...