之前在osc看到一个文章讨论Get和Post的不同, 有人说不能用Get来上传文件。这就是用Get上传文件的例子,client用来发Get请求,server用来收请求。文件内容是在http请求的body内传过去的。用了不同的语言,因为我觉得各自处理起来都要方便些。而且我觉得浏览器也是可以发出这样的请求的,之后我会尝试一下。
请求端代码
复制代码 代码如下:
import requests #需要安装requests
with open(\’test.txt\’, \’rb\’) as f:
requests.get(\’http://127.0.0.1:9999\’, data=f)
服务端代码
复制代码 代码如下:
var http = require(\’http\’);
var fs = require(\’fs\’);
var server = http.createServer(function(req, res){
//console.log(req);
var recData = \”\”;
req.on(\’data\’, function(data){
recData += data;
})
req.on(\’end\’, function(data){
recData += data;
fs.writeFile(\’recData.txt\’, recData, function(err){
console.log(\’file received\’);
})
})
res.end(\’hello\’);
})
server.listen(9999);
以上就是本文的所有代码了,希望对大家理解get方法上传文件能够有所帮助。