这是我到目前为止所得到的。我需要一个用于推文的curl命令,但我无法在powershell中运行此命令。基本上这适用于unix中的bash但不适用于powershell。我是powershell的新手,我需要帮助。
$command=".\curl.exe --GET 'https://api.twitter.com/1.1/search/tweets.json' --data 'geocode=35.144345%2C33.411364%2C50km' --header 'Authorization: OAuth oauth_consumer_key="nX4pcKmVh97AurzF1vw", oauth_nonce="8b75d7086fcb184fd4558c11fcf64ca1", oauth_signature="Kh%2FrwmLLKT%2FmcjY9mf9z4%2F9duNY%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1398393421", oauth_token="823982814-qi4RnSxugD7nPp5zwWEe8LZ1PxfTLpKsbVk2nR12", oauth_version="1.0"' --verbose"
invoke-expression $command
我也试过invoke-WebRequest $command
我有这个错误:
* SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
* Closing connection #0
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
答案 0 :(得分:1)
而不是使用Invoke-Command(或者更糟糕的是:使用包含shell命令的字符串调用Invoke-WebRequest) - 尝试使用带有herestring的Start-Process。 您可以阅读here如何以及原因。
另外:自PowerShell v3以来,有一种方法可以关闭PowerShell解析:
.\curl.exe --% All your parameters for curl go here
答案 1 :(得分:0)
由于单引号,该命令无法在Windows上运行。它需要在Windows中双引号。例如"https://blablabla..."
对于证书问题,请确保安装了openssl(或其他内容)并且curl正在使用相应的证书。但是出于测试目的,您可以使用-k
参数来使用不安全的通道。
答案 2 :(得分:0)
尝试此PowerShell模块https://github.com/MeshkDevs/InvokeTwitterAPIs
而不是curl