Как передать строку со специальными символами в функцию на стороне сервера - PullRequest
0 голосов
/ 14 января 2019

У меня есть базовая служба приложений, которая создает заголовок. Когда моя клиентская страница передает значения параметров моей функции на стороне сервера со специальными символами, появляются вопросительные знаки.

Могу я спросить, как мне это исправить?

Мой текущий код.

index.js

var title = "Búsq"
titleService.CreateTitle(title).success(function (data) {
    vm.title= data;
});

TitleAppService.cs

public string CreateTitle(string title)
{
    // title is received here as B�sq <- how do I resolve this, it should be Búsq
}

1 Ответ

0 голосов
/ 14 января 2019

Предполагая, что параметры title передаются как часть URL-адреса, их следует кодировать ДО отправки на сервер. На некоторых платформах значение должно быть декодировано на стороне сервера

Кодировка на стороне клиента - JS (от MDN )

titleService.CreateTitle(encodeURIComponent(title)).success(function (data) {
    vm.title= data;
});

Декодирование на стороне сервера - C # (Следуйте этому ответ )

public string CreateTitle(string title)
{
    title = Server.UrlDecode(title);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...