`
- 浏览:
326359 次
- 性别:
- 来自:
上海
-
how to use Socket and CURL
-
<?php
-
-
-
-
-
-
-
function request_by_socket($remote_server,$remote_path,$post_string,$port = 80,$timeout = 30){
-
$socket = fsockopen($remote_server,$port,$errno,$errstr,$timeout);
-
if (!$socket) die("$errstr($errno)");
-
-
fwrite($socket,"POST $remote_path HTTP/1.0");
-
fwrite($socket,"User-Agent: Socket Example");
-
fwrite($socket,"HOST: $remote_server");
-
fwrite($socket,"Content-type: application/x-www-form-urlencoded");
-
fwrite($socket,"Content-length: ".strlen($post_string)+8."");
-
fwrite($socket,"Accept:*/*");
-
fwrite($socket,"");
-
fwrite($socket,"mypost=$post_string");
-
fwrite($socket,"");
-
-
$header = "";
-
while ($str = trim(fgets($socket,4096))) {
-
$header.=$str;
-
}
-
-
$data = "";
-
while (!feof($socket)) {
-
$data .= fgets($socket,4096);
-
}
-
-
return $data;
-
}
-
-
-
/**
-
* Curl版本
-
* 使用方法:
-
* $post_string = "app=request&version=beta";
-
* request_by_curl('http://facebook.cn/restServer.php',$post_string);
-
*/
-
function request_by_curl($remote_server,$post_string){
-
$ch = curl_init();
-
curl_setopt($ch,CURLOPT_URL,$remote_server);
-
curl_setopt($ch,CURLOPT_POSTFIELDS,'mypost='.$post_string);
-
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
-
curl_setopt($ch,CURLOPT_USERAGENT,"Jimmy's CURL Example beta");
-
$data = curl_exec($ch);
-
curl_close($ch);
-
return $data;
-
}
-
-
-
-
-
-
-
function request_by_other($remote_server,$post_string){
-
$context = array(
-
'http'=>array(
-
'method'=>'POST',
-
'header'=>'Content-type: application/x-www-form-urlencoded'."".
-
'User-Agent : Jimmy's POST Example beta'."".
-
'Content-length: '.strlen($post_string)+8,
-
'content'=>'mypost='.$post_string)
-
);
-
$stream_context = stream_context_create($context);
-
$data = file_get_contents($remote_server,FALSE,$stream_context);
-
return $data;
-
}
-
-
?>
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
`curl`和`socket`是两种常用的网络通信工具,它们各自有着独特的特性和应用场景。本文将深入探讨这两个库在iOS上的应用以及它们之间的差异。 首先,我们来了解`curl`。`curl`是一个命令行工具和库,用于在各种协议...
curl-unix-socket, 通过UNIX套接字运行HTTP请求 在UNIX套接字上的HTTP请求我想尝试 Docker API而不在TCP套接字上绑定它。 Curl在UNIX套接字上不工作,因此我已经完成了以下操作:插件生成go get github....
学习和使用Socket及cURL时,源码分析和工具辅助至关重要。源码可以帮助我们理解底层工作原理,提升编程技能;工具如Wireshark(网络封包分析软件)可以帮助我们查看网络通信过程,调试和优化代码。 总的来说,掌握...
下载`curl`包的过程非常简单,首先,你需要访问`curl`的官方网站或者通过软件仓库(如APT for Ubuntu或YUM for CentOS)获取最新版本。官网地址是<https://curl.se/download.html>。在网站上,你可以找到适用于不同...
Curl.zip 文件包含了一个在Windows环境下使用C++开发的CURL库示例程序。CURL是一个流行的开源库,用于在各种编程语言中处理URL传输,包括文件上传、下载、HTTP、HTTPS、FTP等网络协议。这个C++ DEMO将帮助我们理解...
克拉马伏那卡 Ansible剧本,用于安装和自定义ClamAV并针对受感染的文件进行测试。 支持Linux发行版 Debian 9 Debian 10 ... Version of curl is too low to use fdpassing. Please use tcp socket
cURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称cURL为下载工具。cURL还包含了用于程序开发的libcurl。cURL支持的通信协议有FTP...
然后在 Perl 脚本中,通过 `use WWW::Curl;` 导入模块,创建 `Curl` 对象并调用其方法发起网络请求。 6. **示例代码**: 以下是一个简单的 `WWW::Curl` 使用示例,演示如何发起 GET 请求并获取响应内容: ```perl...
python /path/to/curl_to_py.py curl到python的样本: curl -u香蕉:椰子-d“示例数据” 结果: import requests headers = { 'Content-Type' : 'application/x-www-form-urlencoded' , } fullurl = '...
指的是使用 `curl` 命令行工具从 GitHub 克隆 `curl` 项目的 Git 仓库。`curl` 是一个用于传输数据的命令行工具,它支持多种协议,包括 HTTP、HTTPS、FTP 等。在本例中,它被用来与 Git 协议交互,克隆 `curl/curl` ...
`curl-7.53.1`是该工具的一个特定版本,由`spendrhy`发布,适用于AIX 7.1操作系统。在AIX系统上安装`curl`对于系统管理员和开发人员来说非常重要,因为它提供了对网络资源的便捷访问,特别是用于调试和测试URL。 ...
Find out how to use curl by reading [the curl.1 man page](https://curl.haxx.se/docs/manpage.html) or [the MANUAL document](https://curl.haxx.se/docs/manual.html). Find out how to install Curl
$message = 'This message was generated by curl and php'; $curlPost = 'pNUMBER=' . urlencode($phoneNumber) . '&MESSAGE=' . urlencode($message) . '&SUBMIT=Send'; $ch = curl_init(); curl_setopt($ch, ...
curl-8.4.0.tar.gz curl-8.4.0.zip
Mail bug reports and suggestions to <bug-wget@gnu.org>. arent directory. s. wget.HLP: No such file or directory C:\Users\root>curl --help Usage: curl [options...] --abstract-unix-socket ...