Amplifyjs 带正文的 GET 请求

Amplifyjs GET request with body

我希望能够使用 AmplifyJS 将 GET 与消息正文一起使用。

我的问题具体是关于如何使用 AmplifyJS 实现的。

综合测试工作正常(Fiddler 是我的测试客户端)。但是当我通过 AmplifyJS 执行此操作时,"body" 被添加到查询字符串中。 (编辑:这是底层 jQuery "ajax" 的限制还是 AmplifyJS 的选择)

amplify.request.define('trickyGet', 'ajax', {
                url: 'entity/{param}',
                dataType: 'json',
                type: 'GET',
                contentType: '???'
            });

然后

amplify.request({
                    resourceId: 'trickyGet',
                    data: { param: 'paramVal', data: JSON.stringify({'complex1': 'complex1Val'}) },
                    //data: { param: 'paramVal', data: {'complex1': 'complex1Val'}) },
                    success: callbacks.success,
                    error: callbacks.error
                });

我尝试了各种组合,包括如何表示我的复杂数据以及 content-type 使用什么。

如果我将 type 更改为 POST(当然还要更改我的 API 终点),一切正常(data 在邮件正文中)。但是使用 get,data 被附加到查询字符串(通过 AplifyJS)。

amplify.js 使用 jQuery 的 ajax() 方法,这反过来限制了 get 请求期间发送 data 的方式。