如何使用 PHP 通过 cURL 向 REST API 发送 HTTP GET 请求,并使用 cURL 从 REST API 调用方法

natxchill

我正在使用PHPcURL
我想将 HTTPGET请求发送到REST API,我想从REST API.
我怎样才能通过cURL使用PHP我有API URL和钥匙。
我必须用 URL 发送我的密钥,我需要里面的方法REST API
我需要做什么?
同时,我必须对所有请求发送基本身份验证,然后才能获取JSON数据。
我能怎么做?

谢谢。问候

这是我的代码

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url);    
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 20);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);     
curl_setopt($ch, CURLOPT_USERPWD, $username.':'.$password);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array(   
    'Accept: application/json',
    'Content-Type: application/json')                                                           
);             
$result = curl_exec($ch);

curl_close($ch);
下载

我已经尝试了你的代码并将变量更改为数组。添加了 httpheaders、useragents。并保存到 cookie 和 cookie 位置。并测试:

$username = "username";
$password = "password";
$url = "http://localhost/html/login";
$send = "?username=".$username."&password=".$password; 

$ch = curl_init();
curl_setopt_array($ch, array(
    CURLOPT_URL            => $url, 
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_FOLLOWLOCATION => 1,
    CURLOPT_VERBOSE        => 1,
    CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0',
    CURLOPT_POST => true,
    CURLOPT_USERNAME, $username,
    CURLOPT_USERPWD, $password,
    CURLOPT_POSTFIELDS => $send,
    CURLOPT_SSL_VERIFYPEER, false,
    CURLOPT_HEADER => 1,
    CURLOPT_HTTPHEADER   => array(
                                "Accept-Language: en-US;q=0.6,en;q=0.4", 
                                "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", 
                                "Connection: keep-alive"
                                ),
    CURLOPT_COOKIEFILE => "cookies.txt", 
    CURLOPT_COOKIEJAR => "cookies.txt",
    CURLOPT_REFERER => "http://localhost/html/login",
    CURLOPT_ENCODING => 'gzip,deflate'
)); //gzip, if modul on
curl_exec($ch);
curl_close($ch);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP Rest Api多个参数如何使用curl发送

使用cURL通过jQuery Ajax将数据作为JSON发送到PHP Rest API

如何使用cURL在php中调用Base crm REST api?

使用 PHP CURL 通过 REST API 更新 WooCommerce 产品

向Stackoverflow API发送PHP Curl请求

通过Rest API使用Javascript发送Http POST请求

如何通过curl调用使用HTTP请求发送标头?

PHP cURL GET 请求 REST API 不返回任何内容

PHP对REST API停顿的多个cURL请求

如何使用 angular 向 REST api 发送删除请求

使用cUrl通过其REST API配置Keycloak

向Google Contacts REST API发出HTTP GET请求时如何使用API密钥

如何使用CURL向API发送数据或从API接收数据?

使用CURL创建和发送邮件的Office 365 REST API获取HTTPCode 400错误请求

如何通过cURL / PHP使用PUT方法将JSON数据发送到API

使用来自REST API的cURL

在Node + cURL中使用REST API

Gitlab通过curl调用REST API不起作用

我正在使用python调用Rest API Curl命令,但是发布请求无法正常工作

使用PHP通过Twilio Rest API发送批量短信

从电话应用程序向 REST API 发送 GET 请求

使用GET(PHP:Curl,Javascript)通过表单查询API

PHP、cURL、REST_API、JSON - 使用“PUT”方法在数据字段中插入值

如何通过REST API向JIRA发送POST请求以创建项目

如何使用curl访问Twitter REST API v1.1?

如何使用curl的rest api从Nexus检索工件校验和?

使用Python向REST API提交请求

使用 Curl 调用 API

PHP:在CURL GET调用中使用API密钥