AngularJS $ http.get, который содержит параметр с нулевым значением - PullRequest
0 голосов
/ 26 февраля 2019

У меня странная проблема, и я не могу ее понять.Когда я звоню $http.get с такими параметрами, как

{oneId: 111
 twoId: 222
 stringValue: null}

, то stringValue отсутствует, и запрос идет как

http://my-uri.com/action?oneId=111&twoId=222

Но если stringValue установлено как undefined тогда все идет хорошо.Что там не так?

1 Ответ

0 голосов
/ 26 февраля 2019

null - зарезервированное ключевое слово, поэтому оно ведет себя так.Вы можете решить эту проблему несколькими способами -

  1. , так как вы используете asp.net web api - вы можете переписать свое действие -
public IHttpActionResult someAction(long oneId, long twoId, string stringValue = null)

Inтаким образом, если stringValue не передано в параметре, то оно будет получено как ноль.

вы можете отправить null в виде строки в методе get -
{oneId: 111
 twoId: 222
 stringValue: "null"}

Отправка пустой строки ("") вместо "null" также возможна.

Также в соответствии с этот ответ - отправка нулевого значения в кодировке URL (% 00) также будет работать.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...