Amazon web services http请求/tracks/{id}来自AWS其他云提供商的403状态代码,但本地为200
从不同VPC内部或从EC2 Classic返回Amazon web services http请求/tracks/{id}来自AWS其他云提供商的403状态代码,但本地为200,amazon-web-services,python-requests,soundcloud,Amazon Web Services,Python Requests,Soundcloud,从不同VPC内部或从EC2 Classic返回403状态代码的任何AWS框向/tracks/{id}端点发送http请求,但是从本地机器发送的相同http请求返回200请求的数据。这可以通过使用python的请求库和curl实现 编辑: 使用谷歌计算引擎和数字海洋进行测试,两者都表现出同样的不良行为 使用?idsurl参数,我可以卷曲/tracks?ids=[bad\u id] i、 e. 不工作:curlhttps://api.soundcloud.com/tracks/182343690?c
403
状态代码的任何AWS框向/tracks/{id}
端点发送http请求,但是从本地机器发送的相同http请求返回200
请求的数据。这可以通过使用python的请求库和curl实现
编辑:
使用谷歌计算引擎和数字海洋进行测试,两者都表现出同样的不良行为
使用?ids
url参数,我可以卷曲/tracks?ids=[bad\u id]
i、 e.不工作:
curlhttps://api.soundcloud.com/tracks/182343690?client_id=XXX
作品:
curlhttps://api.soundcloud.com/tracks/?client_id=XXX&ids=182343690
注意:在请求内部都不工作
但是,以下方法确实有效
import subprocess
subprocess.Popen("curl https://api.soundcloud.com/tracks/?client_id=XXX&ids=182343690", shell=True, stdout=subprocess.PIPE).stdout.read()
我不知道这是否相关,但我在使用PHP的令牌和curl方面遇到了一些问题 最后,我在curl请求中添加了SSL选项,解决了我的问题 代码片段
try {
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
...
curl_setopt($ch, CURLOPT_VERBOSE, 1);
$info = curl_getinfo($ch);
$response = curl_exec($ch);
$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$header = substr($response, 0, $header_size);
$body = substr($response, $header_size);
$result = $body;
...
curl_close($ch);
} catch(Exception $e) {
$this->writeLog('authToken() Error Message: ' .$e->getMessage());
}
我注意到head请求
curl-I
总是有效的。请看我的问题:同样,这似乎是同一个问题: