web-dev-qa-db-ja.com

ExtJs 4.1:Ext.Ajax.request()を使用してリクエスト本文でjsonデータを送信する方法は?

Ext.Ajax.request()を使用してjsonデータを送信し、リクエスト本文のコンテンツであるRequest.InputStreamを使用してASP.NETでデータにアクセスしたいと思います。 Ext.data.proxy.Ajaxを使用しているときに行われるように、リクエスト本文にデータを書き込むようにExtJに指示する方法が必要です。

10
leaf

POSTメソッドを指定し、リクエストのjsonDataconfigを使用します。

Ext.Ajax.request({
    url: 'myUrl',
    method: 'POST',
    params: {
        requestParam: 'notInRequestBody'
    },
    jsonData: 'thisIsInRequestBody',
    success: function() {
        console.log('success');
    },
    failure: function() {
        console.log('woops');
    }
});

recordをJSONとして記述したい場合は、このようなJSONライターを使用することもできます。

var writer = Ext.create('Ext.data.writer.Json'),
    record = Ext.getStore('SomeStoreID').first();

Ext.Ajax.request({
    url: 'myUrl',
    method: 'POST',
    params: {
        requestParam: 'notInRequestBody'
    },
    jsonData: writer.getRecordData(record),
    success: function() {
        console.log('success');
    },
    failure: function() {
        console.log('woops');
    }
});
25
Geronimo