服务器显示url过长,post跳转页面避免414提示url过长

414状态码

在前端中,411 Length Required服务器无法处理客户端发送的不带Content-Length的请求信息,有的时候面对这种情况会比较心碎,基本思路如下:

压缩参数

使用post

不过以上并不能很好的处理一些情况,压缩参数这个需要后端配合,使用post的话,如果是接口API的话,还好,如果是页面的话,就需要post跳转页面。

post页面跳转

基本思路是使用表单来提交参数,步骤:

创建表单

跳转action来指向跳转页面

添加表单数据

插入dom中,设置不可见

通过submit来提交

基本原生javascript的使用:

Document

post

function post() {

//创建form表单

var temp_form = document.createElement("form");

temp_form.action = "https://cn.bing.com";

//如需打开新窗口,form的target属性要设置为'_blank'

temp_form.target = "_self";

temp_form.method = "post";

temp_form.style.display = "none";

var PARAMTERS = [{

name: 'no',

value: 1

}, {

name: 'name',

value: 'baidu'

}, {

name: 'page',

value: 1

}, {

name: 'id',

value: 'cwj'

}, {

name: 'no',

value: 20

}, {

name: 'file',

value: 'filename'

}, {

name: 'name',

value: 'qq'

}, {

name: 'name',

value: 'wechat'

}];

//添加参数

for (var item in PARAMTERS) {

var opt = document.createElement("textarea");

opt.name = PARAMTERS[item].name;

opt.value = PARAMTERS[item].value;

temp_form.appendChild(opt);

}

document.body.appendChild(temp_form);

//提交数据

temp_form.submit();

}

需要注意:

遇到同名的参数的时候,需要注意参数值的处理,可以看看结果如下图:

bVZasX?w=1080&h=771

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值