jquery ajax统一对url编码,jQuery的$ .ajax URL编码问题

在使用jQuery的$.ajax方法向REST服务发送POST请求时,遇到不同浏览器对URL编码的处理不一致的问题。Firefox将URL正确编码,而Chrome、Safari和Internet Explorer则不编码。这导致了REST服务接收到的URL格式不统一。寻求一种方法使所有浏览器在发送URL时保持编码的一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我正在使用jQuery的$ .ajax方法向REST服务发送和检索数据.我提供给$ .ajax方法的一些URL需要空格和其他特殊字符进行编码.

问题在于Chrome,Safari(Webkit)和Internet Explorer浏览器.Firefox POST是一个URL,它被编码但其他浏览器POST到一个未编码的URL.

举个例子:

$.ajax ({

url: "http://localhost:8080/rest/123/Product Line A/[Product Type B]",

type: "POST",

dataType: "json",

data: { ... },

success: function(...){},

error: function(...){}

})

Firefox以下列格式发布URL:

http://localhost:8080/rest/123/Product%20Line%20A/%5BProduct%20Type%20B%5D

Chrome,Safari和IE按以下格式发送网址:

http://localhost:8080/rest/123/Product Line A/[Product Type B]

REST服务接受编码(Firefox)格式 - 有没有一种方法可以使所有浏览器保持一致?

提前致谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值