如何使用代理模型发出POST请求而不是GET请求

How to make POST requests rather than GET requests using proxy model?

本文关键字:请求 GET POST 何使用 代理 模型      更新时间:2023-09-26

我在我的代码中使用这个例子,出于某种原因,它发送请求作为GET而不是POST,我没有看到在任何地方设置,我如何将其更改为POST ?

http://dev.sencha.com/deploy/ext-4.0.2a/examples/grid/infinite-scroll.html

谢谢

一般来说jimbojw是对的。但是,您可以通过这样设置代理配置来使用POST:

proxy: {
  type: 'ajax',
  url: 'test.php',
  getMethod: function(request){ return 'POST'; }
  // ...

由于数据位于另一个域中,并且通过JSONP包含,因此GET是唯一可用的选项。

为了POST,你要么需要在同一个域中,这样就不会违反同源策略,要么使用跨域资源共享。

说了这么多,我在Ext.data.Store文档中没有看到任何专门讨论代理方法的内容,Ext.data.DataProxy文档也没有多大帮助。

而且,Quentin通常是对的,你可能无论如何都想要一个GET请求,因为这在语义上更合适。在某些情况下,您可能被迫使用POST,例如,如果您计划发送到服务器的数据量大于允许的GET URL长度,但通常这应该不是问题。