gpt4 book ai didi

javascript - & 导致字符串在发送到服务器时 split

转载 作者:行者123 更新时间:2023-12-03 07:17:04 24 4
gpt4 key购买 nike

我正在使用 ng-resource 向服务器发送一个字符串。如果我在任何时候将 & 添加到字符串中,则 & 之后的字符不会发送到服务器。

例如,如果我将字符串发送到服务器:

"This part of the string is shown & this part of the string is NOT shown"

& 之后的所有内容都不会显示。就好像它在发送到服务器之前就被切碎了。

这是一个工作代码示例。

angular.module('testApp', ['ngResource'])

.service('TestService', testService)

.controller('Controller', theController);

function testService() {
this.$get = get;

get.$inject = ['$resource'];

function get( $resource ) {
var baseUrl = window.location['origin'];

var theResource = $resource(
baseUrl + '/test_url',
{},
{
testMe: {method: 'GET', url: '/test_url'}
}
)

return theResource;
}
}

theController.$inject = ["TestService"];

function theController(TestService) {
activate();

function activate() {
var stringToSend = "this part of the string is shown & this part of the string will NOT be shown";

// The server will only see the text "this part of the string is shown &"
TestService.testMe({stringParam: stringToSend}, function(resp) {});
}
}

出了什么问题以及如何解决这个问题?

PS:当我的意思是未显示时,我的意思是就好像字符串的该部分从未发送过。

最佳答案

在使用 encodeURI 方法将字符串发送到服务器之前,对字符串进行编码。我认为参数值的解码会自动发生。

代码

TestService.testMe({
stringParam: encodeURI(stringToSend)
}, function(resp) {});

关于javascript - & 导致字符串在发送到服务器时 split ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36378757/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com