我有一个用golang exposing / api / list接口编写的后端。它从GET调用时返回列表,并在接收带参数的POST时创建新列表。 我可以用标准的core-ajax元素来阅读它,有大量的例子可以做到这一点。
当我想通过POST创建新元素时,我不应该理解的是我应该怎么做?我阅读了文档并搜索了半天的示例代码,你能指出我正确的方向吗? // 好的,谢谢你的帮助,这真的只是我发送的json的糟糕格式。在我的脑海里仍然有一片乌云,告诉我从概念角度误解了一些东西。是这样的:
<link rel="import" href="bower_components/polymer/polymer.html">
<link rel="import" href="bower_components/core-ajax/core-ajax.html">
<polymer-element name="channels-service" attributes="channels">
<template>
<style>
:host {
display: none;
}
</style>
<core-ajax id="ch_load"
auto
url="/api/list"
on-core-response="{{channelsLoaded}}"
handleAs="json">
</core-ajax>
<core-ajax id="ch_update"
url="/api/list"
on-core-response="{{channelsUpdated}}"
method="POST"
handleAs="json">
</core-ajax>
</template>
<script>
Polymer('channels-service', {
created: function() {
this.channels = [];
},
channelsLoaded: function() {
// Make a copy of the loaded data
this.channels = this.$.ch_load.response.slice(0);
},
newChannel: function(ch_name) {
// this.$.ch_update.body = "ch_name";
this.$.ch_update.body = '{"Name":"pitchalist2"}'
this.$.ch_update.go();
},
channelsUpdated: function() {
//window.log(this.$.ch_update.response.slice(0));
}
});
</script>
</polymer-element>
正确写入数据层?它看起来非常违反直觉,在使用本地数据存储的示例中,它更容易工作。
答案 0 :(得分:2)
您可以通过设置方法属性(method="POST"
)和正文属性(body='{"my":"data"}'
)来发送POST请求。实际上,您需要第二个 iron-ajax 元素来满足此要求。