文档章节

curl 测试cros请求

O0lele0O
 O0lele0O
发布于 2016/10/24 15:08
字数 414
阅读 60
收藏 0

Sending a regular CORS request using cUrl:

curl -H "Origin: http://example.com" --verbose
https://www.googleapis.com/discovery/v1/apis?fields= The -H "Origin: http://example.com" flag is the third party domain making the request. Substitute in whatever your domain is.

The --verbose flag prints out the entire response so you can see the request and response headers.

The url I'm using above is a sample request to a Google API that supports CORS, but you can substitute in whatever url you are testing.

The response should include the Access-Control-Allow-Origin header.

Sending a preflight request using cUrl:

curl -H "Origin: http://example.com"
-H "Access-Control-Request-Method: POST"
-H "Access-Control-Request-Headers: X-Requested-With"
-X OPTIONS --verbose
https://www.googleapis.com/discovery/v1/apis?fields= This looks similar to the regular CORS request with a few additions:

The -H flags send additional preflight request headers to the server

The -X OPTIONS flag indicates that this is an HTTP OPTIONS request.

If the preflight request is successful, the response should include the Access-Control-Allow-Origin, Access-Control-Allow-Methods, and Access-Control-Allow-Headers response headers. If the preflight request was not successful, these headers shouldn't appear, or the HTTP response won't be 200.

You can also specify additional headers, such as User-Agent, by using the -H flag.

shareimprove this answer edited Aug 29 '12 at 14:01 answered Aug 29 '12 at 13:42

monsur 19.6k66884 1 that page does not seem to return any CORS headers, is that correct? – Janus Troelsen Feb 24 '13 at 20:01

In order to view the actual headers, you need to add the --verbose option, as mentioned above. – monsur Feb 25 '13 at 14:24

Hmm, that may be a bug. Can you try the same request to the following url: server.cors-api.appspot.com/… – monsur Feb 25 '13 at 15:41

--verbose wasn't displaying headers for me either. I replaced it with "--trace-ascii -" – Bryan Larsen Sep 30 '13 at 15:00 2 or --head: curl -H "Origin: http://example.com" --head https://www.googleapis.com/discovery/v1/apis?fields= – John Bachir Apr 6 '14 at 5:30 1 Use --include to see the headers. – Mika Tuupola Feb 18 at 16:18

In the case of S3, the according headers are only added if the proper method is given, you can do so by using curl -H "Access-Control-Request-Method: GET" -H "Origin: http://example.com" -I https://s3.amazonaws.com/your-bucket/file. – Joscha Mar 2 at 2:13

本文转载自:

共有 人打赏支持
O0lele0O
粉丝 2
博文 15
码字总数 25
作品 0
佳木斯
私信 提问
Spring跨域问题

spingMVC 3.X跨域 关于跨域问题,主要用的比较多的是cros跨域。 详细介绍请看https://developer.mozilla.org/zh-CN/docs/Web/HTTP/AccesscontrolCORS 但是,在springmvc+angularjs下支持跨域...

刘引惟
2016/11/17
26
0
spring mvc+Ajax跨域请求-CORS方式

关于跨域问题,主要用的比较多的是cros跨域和JSONP跨域,JSONP跨域我已经在另外一篇博客中写了,这里主要说的是CORS方式的跨域。 CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin re...

别寒
2016/11/02
174
0
Linux安装、使用curl进行Get、Post接口调试

一、linux中如何安装Curl,步骤如下: 1.下载 wget http://curl.haxx.se/download/curl-7.38.0.tar.gz 注意: 如果命令执行失败,请使用浏览器打开链接进行下载,然后在Linux上使用“rz”命令...

mamadu
2017/10/30
0
0
JAVA服务端配置允许跨域请求

CORS是一个W3C标准,全称是”跨域资源共享”(Cross-origin resource sharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。 1.加入CROS依赖的...

冷冷gg
2016/11/13
71
0
iOS WebView使用Ajax与iOS的交互

iOS 使用Ajax实现与Javascript同步异步交互 实现原理: 需要解决的问题: 对于上述问题,我们定义自己的NSURLProtocol 代码实现 我们这里指定schema为 oschina:// 对于其中可能遇到预检请求问...

IamOkay
2016/08/21
1K
4

没有更多内容

加载失败,请刷新页面

加载更多

jenkins 配置

1. ssh-keygen -t rsa 2. 配置 GitLab 用户 创建一个用户或选择一个已有用户,用来让 Jenkins 和 GitLab API 交互。这个用户将需要是全局的管理员或添加进每个组/工程,并作为成员。需要开发...

关上越
7分钟前
1
0
中台迷思

到处都在喊中台,到处都是中台,中台这个词在我看来已经被滥用了。 在有些人眼里:中台就是技术平台,像微服务开发框架、Devops平台、PaaS平台,容器云之类的,人们都叫它“技术中台”。 在有...

老道士
13分钟前
1
0
Linux命令参数解析

Linux命令参数 通过一个例子来理解什么是Linux命令参数。以Linux中常用的删除命令“rm”为例,输入“rm --help”可以看到如下信息,其中红色框内的就是命令参数。经常使用Linux对命令参数应该...

RongJinhui0
17分钟前
1
0
边缘节点服务ENS重磅升级 阿里云首次定义“边缘云计算”概念层层深入

摘要: 在这一横一纵之间,阿里云在2018年率先提供了基于运营商边缘节点和网络的弹性分布式算力资源平台,也就是边缘节点服务ENS,连接最后10公里的ENS可以帮助用户将计算、转发等业务下沉至...

阿里云云栖社区
21分钟前
1
0
阿里云 Aliplayer高级功能介绍(四):直播时移

基本介绍 时移直播基于常规的HLS视频直播,直播推流被切分成TS分片,通过HLS协议向播放用户分发,用户请求的m3u8播放文件中包含不断刷新的TS分片地址;对于常规的HLS直播而言,TS分片地址及相...

阿里云官方博客
24分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部