标签: curl

使用node.js发送Content-Type:application/json post

我们如何在NodeJS中发出这样的HTTP请求?示例或模块表示赞赏.

curl https://www.googleapis.com/urlshortener/v1/url \
  -H 'Content-Type: application/json' \
  -d '{"longUrl": "http://www.google.com/"}'
Run Code Online (Sandbox Code Playgroud)

post curl node.js

109
推荐指数
4
解决办法
13万
查看次数

将cURL设置为使用本地虚拟主机

使用Apache或Ngnix我总是根据实际项目创建开发站点,例如http://project1.loc,在添加到我的.hosts文件后,浏览器使用没有问题.

但是,当我尝试向http://project1.loc/post.json同一个URL 发出一个cURL request()时,除了超时之外我什么也得不到.我假设cURL不关心我的自定义主机,直接进入名称服务器获取它的信息.

我怎样才能解决这个问题?

更新 我设置了一个自定义标题"HOST:http://project1.loc ",现在我得到了400个错误 - 但它们是瞬时的,所以我假设cURL至少使用了hosts文件......

curl hosts

107
推荐指数
3
解决办法
12万
查看次数

如何管道或重定向curl -v的输出?

由于某种原因,输出总是被打印到终端,无论我是通过2>或>还是重定向它.有办法解决这个问题吗?为什么会这样?

unix linux curl

107
推荐指数
5
解决办法
17万
查看次数

不支持ElasticSearch - Content-Type标头[application/x-www-form-urlencoded]

我以前有ElasticSearch 5.2,刚刚升级到6.0.

我试图在这里按照指南创建一个索引模板,但是得到了错误

Content-Type header [application/x-www-form-urlencoded] is not supported
Run Code Online (Sandbox Code Playgroud)

我的疑问是

curl -X PUT localhost:9200/_template/template_1 -d '
{
  "index_patterns": ["te*", "bar*"],
  "mappings": {
    "type1": {
      "properties": {
        "host_name": {
          "type": "keyword"
        }
      }
    }
  }
}'
Run Code Online (Sandbox Code Playgroud)

curl content-type http-put mime-types elasticsearch

107
推荐指数
3
解决办法
6万
查看次数

如何正确使用cURL定义基本HTTP身份验证?

我正在学习Apigility(Apigility docu - > REST Service Tutorial)并尝试通过cURL发送带有基本身份验证的POST请求:

$ curl -X POST -i -H "Content-Type: application/hal+json" -H "Authorization: Basic YXBpdXNlcjphcGlwd2Q=" http://apigilityhw.sandbox.loc/status
Run Code Online (Sandbox Code Playgroud)

YXBpdXNlcjphcGlwd2Q=是我的凭据的基本64编码字符串apiuser:apipwd.凭证保存在/data/htpasswd(apiuser:$apr1$3J4cyqEw$WKga3rQMkxvnevMuBaekg/)中.

看起来像这样:

HTTP/1.1 401 Unauthorized
Server: nginx/1.4.7
Date: Mon, 22 Sep 2014 07:48:47 GMT
Content-Type: application/problem+json
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.5.12-1~dotdeb.1
WWW-Authenticate: Basic realm="api"
Run Code Online (Sandbox Code Playgroud)

这里的错误在哪里?如何让它工作?

curl authorization http basic-authentication apigility

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

基本HTTP和承载令牌认证

我目前正在开发一个REST-API,它为开发环境提供HTTP-Basic保护.由于真正的身份验证是通过令牌完成的,我仍然试图找出,如何发送两个授权头.

我试过这个:

curl -i http://dev.myapp.com/api/users \
  -H "Authorization: Basic Ym9zY236Ym9zY28=" \
  -H "Authorization: Bearer mytoken123"
Run Code Online (Sandbox Code Playgroud)

我可以为我的IP禁用HTTP身份验证,但由于我通常在具有动态IP的不同环境中工作,这不是一个好的解决方案.我错过了什么吗?

rest curl restful-authentication basic-authentication access-token

105
推荐指数
4
解决办法
29万
查看次数

在PostMan中模拟特定的CURL

我使用Postman来测试一些针对API服务器的Curl请求.API开发人员给了我们curl命令,但是我不能用Postman发送它.如何提出这样的要求?

curl -X POST "https://api-server.com/API/index.php/member/signin" -d "{"description":"","phone":"","lastname":"","app_version":"2.6.2","firstname":"","password":"my_pass","city":"","apikey":"213","lang":"fr","platform":"1","email":"email@example.com","pseudo":"example"}"

--0xKhTmLbOuNdArY
Content-Disposition: form-data; name="userfile"; filename="profil.jpg"
Content-Type: image/jpeg
Content-Transfer-Encoding: binary

<ffd8ffe0 00104a46 49460001 01010048 ... a00fffd9>

—0xKhTmLbOuNdArY—
Run Code Online (Sandbox Code Playgroud)

curl httprequest postman

104
推荐指数
6
解决办法
9万
查看次数

PHP CURL CURLOPT_SSL_VERIFYPEER被忽略

出于某种原因,我无法使用HTTPS进行CURL.一切都很好,直到我运行curl库的升级.现在,我在尝试执行CURL请求时遇到此响应: SSL CA证书问题(路径?访问权限?)

根据此处发布的有关相关问题的建议,我尝试执行以下操作:

  • 禁用主机和对等方的验证

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);
    
    Run Code Online (Sandbox Code Playgroud)
  • 启用CURLOPT_SSL_VERIFYPEER并指向从http://curl.haxx.se/docs/caextract.html下载的cacert.pem

    curl_setopt($cHandler, CURLOPT_SSL_VERIFYPEER, true);  
    curl_setopt($cHandler, CURLOPT_CAINFO, getcwd() . "/positiveSSL.ca-bundle");
    
    Run Code Online (Sandbox Code Playgroud)
  • 我还尝试使用positiveSSL.ca-bundle做同样的事情,它是作为我尝试连接的服务器的捆绑CA证书提供的.

  • 使用curl.cainfo=cacert.pem(在同一目录中的文件并通过apache访问)编辑php ini设置

  • 重命名/etc/pki/nssdb/etc/pki/nssdb.old

不幸的是,以上都没有能够解决我的问题,我经常遇到SSL CA证书(路径?访问权限?)消息的问题.

我首先不需要这个验证(我知道安全问题).

有人有任何其他建议吗?

UPDATE

在更新到最新的库并重新启动整个盒子之后,不仅仅是我正在做的apache似乎现在再次正在工作!

php ssl https curl

103
推荐指数
2
解决办法
22万
查看次数

curl_exec()始终返回false

我写了这段简单的代码:

$ch = curl_init();

//Set options
curl_setopt($ch, CURLOPT_URL, "http://www.php.net");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$website_content = curl_exec ($ch);
Run Code Online (Sandbox Code Playgroud)

在我的情况$website_content下来了false.任何人都可以建议/建议可能出错的事情吗?

php curl

101
推荐指数
2
解决办法
10万
查看次数

PHP cURL与file_get_contents

访问REST API时,这两段代码有何不同?

$result = file_get_contents('http://api.bitly.com/v3/shorten?login=user&apiKey=key&longUrl=url');
Run Code Online (Sandbox Code Playgroud)

$ch = curl_init('http://api.bitly.com/v3/shorten?login=user&apiKey=key&longUrl=url');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
Run Code Online (Sandbox Code Playgroud)

从判断起,它们都产生相同的结果

print_r(json_decode($result))
Run Code Online (Sandbox Code Playgroud)

php curl file-get-contents

100
推荐指数
4
解决办法
10万
查看次数