如何使用html5表单提交一个请求体数据为json/xml的请求?

-无名小卒- 发布于 2018/11/05 11:26
阅读 131
收藏 0

我想使用html制作一个发送HTTP请求的功能页用于请求API接口(类似插件Poster,但最新的浏览器版本已经不再支持了【悲催】),这些API一般使用json/xml进行交互,因此我的功能页布局如下图。(请求查看标签页可忽略,这里进讨论请求发送标签页)

我的实现思路:

1.因为API接口可能和当前网页不在同一个域下边,因此不能提交为ajax请求,因为这存在跨域问题。

2.因为我使用的网页服务器资源非常有限,我不想使用服务端来代理发送请求。

3.最终我制作了下边一个页面,让用户选择请求方法(get/post),输入请求地址和请求数据,然后点击发送按钮提交请求。程序这时会使用这些参数构建一个form表单(表单的action指向用户输入的请求地址,内容是一个textarea包含用户的请求数据),然后提交这个表单在新标签页打开。

 

遇到的问题:

1.textarea没有name属性时,浏览器不会把textarea的内容数据提交。(原来我以为,不设置textarea的name属性,提交的就是请求体数据来着……【悲催】)

2.textarea如果设置name属性时,提交的数据就变成 [name]=data(这样的话我想提交一个json或者xml格式的请求就没办法做了)

期望:在下才疏学浅,还望各位大神指条明路,给个解决方案。千恩万谢,感激涕零!

加载中
0
红薯官方
红薯官方

用HTML5 的 Javascript API :

FormData

配合 Ajax,XMLHttpRequest 或 jQuery 也行。

-无名小卒-
-无名小卒-
回复 @蓝水晶飞机 : 需要服务端设置允许当前请求所在域发起跨域请求,但当前的情况是服务端不可控……&_&
红薯官方
红薯官方
回复 @-无名小卒- : 设置 CROS 允许浏览器跨域请求,搜索 CROS 了解。
红薯官方
红薯官方
回复 @巴拉迪维 : 上面的提问内容的图片被设置浮动 float:left,容器没有清除浮动,导致下面的排版塌陷高度不对。
巴拉迪维
巴拉迪维
嗯?
-无名小卒-
-无名小卒-
回复 @蓝水晶飞机 : 接口服务和当前网页可能不在同一域下边,而且我也不能控制服务端。使用ajax会有跨域问题。&_&
下一页
返回顶部
顶部