在ExtJS中使用REST代理似乎不会发布任何数据

时间:2011-12-12 21:25:27

标签: php ajax post extjs

我正在使用这个ExtJS REST代理来获取和发布数据到我的REST后端

this.eventStore = Ext.create('Extensible.calendar.data.EventStore', {
    autoLoad: true,
    proxy: {
        type: 'rest',
        url: 'http://www.notmyrealdomain/testapp/index.php/api/events',
        format: 'json',
        noCache: false,

        reader: {
            type: 'json',
            root: 'data'
        },

        writer: {
            type: 'json',
            nameProperty: 'mapping'
        }            
    }
}

当我在PHP接收端执行print_r时,看起来$ _POST为空

print_r($_POST)
array()

当我查看Firebug时,我发现我的API页面确实发布了JSON,但响应只是空的$ _POST数组。

我已经检查了我的config.php BASE_URL,这是我的完整网址http://www.notmyrealdomain.com/testapp 而且我很确定我上面的代理发布到该网址,它不会返回404,看起来它不会是跨域或任何东西。

有没有人有任何建议? 我现在已经看了8个小时,需要一些新的眼睛。

帮助我stackoverflow,这是我唯一的希望。

2 个答案:

答案 0 :(得分:2)

通过PUT方法发送。

在PHP中尝试:

var_dump(file_get_contents('php://input'));

答案 1 :(得分:0)

我注意到您使用的是完整的“http:// ...”网址。如果您的REST服务位于不同的域上,则需要JSONP代理。