【问题标题】:Passing additional POST parameters every time a model is added to a store that has a 'api' config option每次将模型添加到具有“api”配置选项的商店时传递额外的 POST 参数
【发布时间】:2017-03-19 15:26:40
【问题描述】:

Ext JS 4:每次将模型添加到具有“api”配置选项的商店时,都会传递额外的 POST 参数

使用案例:

一个典型的商店:

api:{ read:url1.php, create:url2.php } 

包括:

extraParams:{...} 

通知.php脚本:sqlserver、log、pass、db、table参数。

加载存储 (api->read) 会将这些 extraParams{...} 作为 POST 参数包含在 HTTP 请求中,从而导致读取操作成功。

将模型添加到商店(api->create)只会在HTTP请求中发送模型(记录),忽略extraParams:{...},所以我的.php脚本会失败。

有没有办法用所需的额外参数通知 .php 脚本?

【问题讨论】:

  • 不使用 Ext4,他们改变了它,所以现在 extraParams 只发送读取而不发送更新,我知道,它很糟糕而且很愚蠢,但他们这样做了,所以我们必须处理它,您可以覆盖代理中的 buildRequest 方法(或 doRequest,更适合您的方法)以获得所需的行为。
  • 我确实注意到了一个警告,如果您将read 标记为'POST',它不会附加extraParams,而是留下'GET' 请求为我解决了该问题。

标签: extjs extjs4


【解决方案1】:

我在 ext4.0.7 中遇到了像你这样的问题,所以我创建了一个方法来保存 json 文件。 为了处理所有参数,我发出这样的 ajax 请求:

Ext.Ajax.request({
        url: 'scripts/send.php',
        params: {stringapwd : stringa},
        method: 'POST',
    success: function (response){
        },
        failure: function(response, opts) {
            }
    });

另见:

http://docs.sencha.com/ext-js/4-1/#!/api/Ext.Ajax

【讨论】:

  • 他没有询问通用 Ajax 请求。他在询问带有创建/更新界面的商店。
  • 我给他一个不同的解决方案。就是这样。
  • 没有。你给了他解决另一个问题的方法。完全。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-12
相关资源
最近更新 更多