聚合物core-ajax PUT 405方法不允许

时间:2015-04-14 10:08:14

标签: jquery ajax json polymer

所以基本上我有一个元素,里面有一个文本区域。我希望能够将输入的文本保存到加载到JSON文件中。我一直得到405(方法不允许)。页面加JSON都在同一个域中。

注意:我对此很新,所以我不确定这是否可行。干杯

<paper-input-decorator id="input_box"hidden >
        <paper-autogrow-textarea style="width:100%">
            <textarea id="noteArea"></textarea>
        </paper-autogrow-textarea>
</paper-input-decorator>

<core-ajax 
   auto
   id="save"
   url="{{url}}"
   method="PUT"
   params='{"id":"{{id}}", "note":"{{note}}"}'
   handleas="json"
   on-core-response="{{handleResponse}}">
</core-ajax>

<script>
    Polymer("add-note", {
        open: function (event, detail, sender) {
            this.$.input_box.hidden = !this.$.input_box.hidden;
            this.note = this.$.noteArea.value;
            this.$.save.go();
        },
        handleResponse: function (response) {
            console.log(response, this.url, this.uid);
        }
    });
</script>

Json Data看起来像这样

[
    {
    "uid": 1,
    "note":  ""
    }
]

希望有所帮助。干杯

1 个答案:

答案 0 :(得分:0)

我正在浏览你的代码,并且有一些我不知道的事情。

params='{"id":"{{id}}", "note":"{{note}}"}' {{id}}的值来自何处?

你在哪里调用open函数?

您可能会收到405错误代码的原因,因为您尝试调用的Web服务可能根本不支持PUT方法。您可能需要从处理Web服务的人员进行确认。

同样this.note = this.$.noteArea.value;可能不是分配值的好方法。尝试在Polymer中查看双向数据绑定。