标签: request

使用python提交到Web表单

我见过很多次这样的问题,但没有一个是有帮助的

我试图将数据提交到网上的表格我已经尝试过请求,并且urllib和没有工作

例如,这里是应该在SO上搜索[python]标签的代码:

import urllib
import urllib2

url = 'http://stackoverflow.com/'

# Prepare the data
values = {'q' : '[python]'}
data = urllib.urlencode(values)

# Send HTTP POST request
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)

html = response.read()

# Print the result
print html
Run Code Online (Sandbox Code Playgroud)

但当我运行它时,我得到主页的html源

这是一个使用请求的示例:

import requests

data= {
    'q': '[python]'
    }
r = requests.get('http://stackoverflow.com', data=data)

print r.text
Run Code Online (Sandbox Code Playgroud)

同样的结果!我不明白为什么这些方法不起作用我已经在各种网站上尝试过但没有成功,所以如果有人成功完成了这个请告诉我如何!

非常感谢!

python post urllib urllib2 request

25
推荐指数
2
解决办法
9万
查看次数

与Clojure的REST API交互

在不必运行Web服务器的情况下,向外部REST API发送和接收请求的建议方法是什么?我似乎无法找到任何关于发出请求和解析生成的JSON的信息.到目前为止,我唯一发现的只是json解析内容(使用Cheshire库).

任何帮助将不胜感激!

api rest clojure request

24
推荐指数
1
解决办法
9159
查看次数

Node.js使用内容处置作为文件名下载文件

我正在使用Request模块下载文件,但是当文件名必须来自'Content-Disposition'标题时,我不太确定如何将响应传递给输出流.基本上,我需要读取响应,直到找到标头,然后将其余部分传递给该文件名.

示例显示如下:

request('http://google.com/doodle.png').pipe(fs.createWriteStream('doodle.png'));

我想去的地方(伪代码):

var req = request('http://example.com/download_latest_version?token=XXX');
var filename = req.response.headers['Content-Disposition'];

req.pipe(fs.createWriteStream(filename));
Run Code Online (Sandbox Code Playgroud)

我可以使用Request回调获取文件名:

request(url, function(err, res, body) {
 // get res headers here
});
Run Code Online (Sandbox Code Playgroud)

但这不会否定使用管道的好处而不是将下载的文件加载到内存中吗?

request node.js

24
推荐指数
2
解决办法
4万
查看次数

Nest.js 验证字符串数组(如果仅存在已定义的字符串)

在控制器级别的 Nest.js 应用程序中,我必须验证 DTO。

我很难检查项目是否不为空(如果任何列表项目为null或,则请求应被拒绝undefined

下面的代码演示了我配置的验证。

import { ArrayMinSize, IsArray } from 'class-validator'

export class ReminderPayload {
    // ...
    @IsArray()
    @ArrayMinSize(1)
    recipients: string[]
}
Run Code Online (Sandbox Code Playgroud)

问题

  1. 我正在寻求帮助来拒绝带有身体数据的请求,例如
{
    "recipients": [
        null
    ]
}
Run Code Online (Sandbox Code Playgroud)
  1. 如何验证数组项是否string唯一(如果对象位于数组项位置,则应拒绝处理)?

聚苯乙烯

'class-validator'注入成功,它为我的 API 生成了一些验证结果。

validation request typescript nestjs

24
推荐指数
1
解决办法
3万
查看次数

CloudFlare 在哪里检测网络和终端请求?!在平等条件下

我的问题是CloudFlare在 中打开网站CLI
我的意思并不是说存在挑战并且我不想解决挑战。

以此网站为例: https: //pegaxy.io
在新安装的任何网络浏览器上首次打开时。它打开没有任何问题。代码200已收到。

使用网络浏览器打开

但是当我点击并在终端中Copy as cURL出现错误时。403

在终端中打开

卷曲代码:

curl 'https://pegaxy.io/' \
  -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:91.0) Gecko/20100101 Firefox/91.0' \
  -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' \
  -H 'Accept-Language: en-US,en;q=0.5' \
  -H 'Connection: keep-alive' \
  -H 'Upgrade-Insecure-Requests: 1' \
  -H 'Sec-Fetch-Dest: document' \
  -H 'Sec-Fetch-Mode: navigate' \
  -H 'Sec-Fetch-Site: none' \
  -H 'Sec-Fetch-User: ?1' \
  -H 'Pragma: no-cache' \
  -H 'Cache-Control: no-cache' \
  --compressed --verbose
Run Code Online (Sandbox Code Playgroud)

日志:

$ curl 'https://pegaxy.io/' \ …
Run Code Online (Sandbox Code Playgroud)

curl http request cloudflare

24
推荐指数
2
解决办法
8389
查看次数

Django模板:创建一个"后退"链接?

我正在使用Django工具,我想知道是否有一种简单的方法可以使用模板系统创建到上一页的"后退"链接.

我认为在最坏的情况下,我可以从视图函数中的请求对象获取此信息,并将其传递给模板呈现方法,但我希望我能以某种方式避免所有这些样板代码.

我检查了Django模板文档,我没有看到任何明确提到这一点的内容.

python django request referrer

23
推荐指数
4
解决办法
2万
查看次数

JS/jQuery获取HTTPRequest请求标头?

在xhr对象中使用getAllResponseHeaders,可以在ajax调用之后获取所有响应头.但我找不到获取Request头字符串的方法,这可能吗?

javascript ajax header request request-headers

23
推荐指数
1
解决办法
4万
查看次数

请求管道上的错误处理

我在nodejs上编写了简单的代理,它看起来像

var request = require( 'request' );
app.all( '/proxy/*', function( req, res ){
    req.pipe( request({
        url: config.backendUrl + req.params[0],
        qs: req.query,
        method: req.method
    })).pipe( res );
});
Run Code Online (Sandbox Code Playgroud)

如果远程主机可用,它可以正常工作,但如果远程主机不可用,则整个节点服务器会因未处理的异常而崩溃

stream.js:94                                               
      throw er; // Unhandled stream error in pipe.         
            ^                                              
Error: connect ECONNREFUSED                                
    at errnoException (net.js:901:11)                      
    at Object.afterConnect [as oncomplete] (net.js:892:19) 
Run Code Online (Sandbox Code Playgroud)

我该如何处理这些错误?

javascript request node.js

23
推荐指数
1
解决办法
2万
查看次数

如何为此节点请求模块启用详细日志?

如何为以下节点请求模块启用详细日志?

https://github.com/mikeal/request

 var reqParam = {
            'headers': {
                'User-Agent': 'CLA'
            },
            'body': 'CSCCDDSADADDADADADAAAEE', 
            'strictSSL': true,
            'jar': false,
            'encoding': null,
            'timeout': 300000
        };

  request.post(reqParam, function (err, res, body) {               
        if (err) {
           console.log('Curl request received an error:' + err);  
        }
    console.log(body);
  };
Run Code Online (Sandbox Code Playgroud)

有什么选项可以为https://github.com/mikeal/request模块启用http VERBOSE日志?

request node.js

23
推荐指数
1
解决办法
2万
查看次数

查询参数(axios请求)中具有相同键的多个字段?

所以后端(不在我的控制之下)需要一个像这样的查询字符串:

http://example.com/?foo=5&foo=2&foo=11
Run Code Online (Sandbox Code Playgroud)

但是axios使用JS对象发送请求参数:

axios.get('http://example.com/', { foo: 5 });
Run Code Online (Sandbox Code Playgroud)

显然,这样的对象不能有多个具有相同键的字段.

如何使用相同的密钥发送包含多个字段的请求?

javascript parameters request axios

23
推荐指数
3
解决办法
2万
查看次数