使用&符号的rxjs问题的Ajax请求

时间:2018-05-21 11:59:17

标签: javascript ajax rxjs rxjs5

我在我的应用程序中使用rxjs。

package.json 中,我的rxjs依赖关系为"rxjs": "^5.2.0"

从那起我使用ajax模块:

import { ajax } from 'rxjs/observable/dom/ajax'

我无法找到ajax功能的文档。

我的代码:

let categories = action.payload.subcategories.map(cat => cat.id)
let shop = JSON.stringify(action.payload.shop)
action.payload.categories = JSON.stringify(categories)
action.payload.shop = shop
return ajax
  .post('http://192.xxx.xxxx:4000/products', action.payload, {
    'Content-': 'application/json'
  })

我遇到一个问题,如果shop对象的某个字段中有一个&符号,则会破坏正在发送的json.stringified对象。

如何在不破坏字段的情况下允许对象的文本字段中的&符号为json.stringified?

我必须对其进行网址编码吗?它只是意味着在后端进行更多的解码工作,所以我正在查看我的选项。

This SO answer似乎是一种简单的方法,虽然我没有使用jquery,但我不知道如何在ajax.post函数中将请求类型设置为数据对象使用

action.payload:

enter image description here

发送的实际表单数据(开发人员控制台中的网络选项卡)

enter image description here

我注意到当我在javascript中使用encodeURIComponent()时,它确实大量更改了有效负载。我目前有后端解码json,所以如果可能的话,我希望避免更改有效负载。后端在Elixir。

0 个答案:

没有答案