我在我的应用程序中使用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:
发送的实际表单数据(开发人员控制台中的网络选项卡)
我注意到当我在javascript中使用encodeURIComponent()
时,它确实大量更改了有效负载。我目前有后端解码json,所以如果可能的话,我希望避免更改有效负载。后端在Elixir。