到API的PHP套接字连接
我正在尝试使用PHP套接字连接到API 我试过很多种方法,但都没用。我知道还有其他的答案,但没有一个是有效的。我真的做不到。我至少要试两天 以下是错误: php_网络_getaddresses:getaddrinfo失败:名称或服务未知 代码(套接字-不工作): 代码(Curl-它可以工作!):到API的PHP套接字连接,php,web-services,sockets,Php,Web Services,Sockets,我正在尝试使用PHP套接字连接到API 我试过很多种方法,但都没用。我知道还有其他的答案,但没有一个是有效的。我真的做不到。我至少要试两天 以下是错误: php_网络_getaddresses:getaddrinfo失败:名称或服务未知 代码(套接字-不工作): 代码(Curl-它可以工作!): 我无法给您提供正确的URL,但URL使用的是Curl,因此它应该使用套接字 我通过以下方法解决了这个问题: public function getUsers(){ $path = "users/
我无法给您提供正确的URL,但URL使用的是Curl,因此它应该使用套接字 我通过以下方法解决了这个问题:
public function getUsers(){
$path = "users/?accesstoken=c24f506fe265488435858925096bc4ad7ba0";
$fp = fsockopen($this->url, 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET /{$path} HTTP/1.1\r\n";
$out .= "Host: {$this->url}\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
}
公共函数getUsers(){
$path=“users/?accesstoken=c24f506fe265488435858925096bc4ad7ba0”;
$fp=fsockopen($this->url,80,$errno,$errstr,30);
如果(!$fp){
回显“$errstr($errno)\n”; }否则{ $out=“GET/{$path}HTTP/1.1\r\n”; $out.=“主机:{$this->url}\r\n”; $out.=“连接:关闭\r\n\r\n”; fwrite($fp,$out); 而(!feof($fp)){ echo fgets(fp,128美元); } fclose($fp); } }
我通过以下操作解决了这个问题:
public function getUsers(){
$path = "users/?accesstoken=c24f506fe265488435858925096bc4ad7ba0";
$fp = fsockopen($this->url, 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET /{$path} HTTP/1.1\r\n";
$out .= "Host: {$this->url}\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
}
公共函数getUsers(){
$path=“users/?accesstoken=c24f506fe265488435858925096bc4ad7ba0”;
$fp=fsockopen($this->url,80,$errno,$errstr,30);
如果(!$fp){
回显“$errstr($errno)\n”; }否则{ $out=“GET/{$path}HTTP/1.1\r\n”; $out.=“主机:{$this->url}\r\n”; $out.=“连接:关闭\r\n\r\n”; fwrite($fp,$out); 而(!feof($fp)){ echo fgets(fp,128美元); } fclose($fp); } }
通过套接字连接到主机不是连接到URL 错误:
api.site.com.br/
错误:http://api.site.com.br/
错误:https//api.site.com.br/api/
右侧:api.site.com.br
您可以连接到主机。这可以是域名或IP。这两个都没有斜杠。通过套接字连接到主机不是连接到URL 错误:
api.site.com.br/
错误:http://api.site.com.br/
错误:https//api.site.com.br/api/
右侧:api.site.com.br
您可以连接到主机。这可以是域名或IP。这两个都没有斜线。这不是问题。这不是问题。
public function getUsers(){
$path = "users/?accesstoken=c24f506fe265488435858925096bc4ad7ba0";
$fp = fsockopen($this->url, 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET /{$path} HTTP/1.1\r\n";
$out .= "Host: {$this->url}\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
}