【问题标题】:PHP Laravel cURL API Cookie not been usedPHP Laravel cURL API Cookie 未使用
【发布时间】:2018-05-28 22:22:07
【问题描述】:

我正在使用 HTTP RESTFUL API 来获取 json 文件。我正在尝试使用 cURL php 获取 apiCredentials,请参见下面的代码。

    <?php  
        $url = 'http://api.olhovivo.sptrans.com.br/v2.1/Login/Autenticar?token='.$token;
        $curl = curl_init($url);


        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, "");

        $cookiesFile = 'cookies.txt';
        curl_setopt($curl, CURLOPT_COOKIEJAR, $cookiesFile);
        curl_setopt($curl, CURLOPT_COOKIEFILE, $cookiesFile); 

        $result = curl_exec($curl);

        curl_close($curl);

        echo $result;

    ?>

我得到了 True 结果。但无法使用其他 API 方法,因为我收到 {"Message":"Authorization has been denied for this request."} 当我尝试使用它时。

我正在我的公共文件夹中生成一个 cookie.txt 文件,但由于某种原因未被使用。

我认为问题在于我无法使用 API 创建的 cookie,但我不确定我是否应该使用 cURL。

不知道是否重要,但我也在使用 laravel 框架。

提前致谢。

【问题讨论】:

    标签: php curl laravel-5 restful-authentication


    【解决方案1】:

    令牌应该改为$token 吗?

    编辑:好的,因为这只是一个错字,我检查了我是否从我的服务器获取数据。我在这个 URI 上没有得到任何内容(我也不知道服务)。如果您删除参数并将它们放入帖子字段中,您会得到响应。

    $url = 'http://api.olhovivo.sptrans.com.br/v2.1/Login/Autenticar';
            $post = ["token" => "asd"];
    
            $ch = curl_init($url);
    
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
    
            $result = curl_exec($ch);
    
            echo $result;
    

    然后你会得到:{"Message":"No HTTP resource was found that matches the request URI 'http://api.olhovivo.sptrans.com.br/v2.1/Login/Autenticar'."}

    无论哪种方式,服务器返回的不是错误而是 0x200,以便与 var_dump(curl_getinfo($ch)) 进行检查。所以我认为这取决于你作为令牌发送的任何内容,无论是有效载荷还是 URI

    【讨论】:

    • 感谢您的回复。其实这是我在获取stackoverflow的代码时犯的一个错字,对不起
    • 出于某种原因,当我删除参数并将它们放入帖子字段时,我没有得到我收到的具有相同令牌的“真实”响应。我也收到了您收到的消息。
    猜你喜欢
    • 1970-01-01
    • 2018-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-21
    • 2013-12-27
    • 2010-12-10
    • 2017-01-31
    相关资源
    最近更新 更多