煎茶 ExtJS.无法使用 Ext.Ajax.request 跨域发送 POST 请求 [英] Sencha ExtJS. Cannot send POST request on cross-domain with Ext.Ajax.request

查看:30
本文介绍了煎茶 ExtJS.无法使用 Ext.Ajax.request 跨域发送 POST 请求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有具有 POST 功能的后端(因此 JSONP 不起作用).后端正确发送 Access-Control-Allow-Origin: * (jQuery.ajax 工作成功).但我无法使用 Ext.Ajax.request 发送请求

Ext.Ajax.request({url: 'http://myurl',方法:'POST',cors:真的,成功:函数(){alert('成功');},失败:函数(){警报('失败');}});

在调试控制台中,我看到了 OPTIONS 方法

我的错误在哪里?

Ext.getVersion()

<块引用>

版本:5.0.1.1255"

解决方案

我认为您还必须在 ajax 请求中将 useDefaultXhrHeader 设置为 false,如下所示.

Ext.Ajax.request({url: 'http://myurl',方法:'POST',cors:真的,useDefaultXhrHeader : false,成功:函数(){alert('成功');},失败:函数(){警报('失败');}});

I have backend with POST functionality (so JSONP is not working). Backend sends Access-Control-Allow-Origin: * correctly (jQuery.ajax works successfully). But I cannot send request using Ext.Ajax.request

Ext.Ajax.request({
  url: 'http://myurl',
  method: 'POST',
  cors: true,
  success: function () {
    alert('success');
  },
  failure: function () {
    alert('failure');
  }
});

In debug console I see OPTIONS method

Where is my mistake?

Ext.getVersion()

version: "5.0.1.1255"

解决方案

I think you will have to set useDefaultXhrHeader to false also in your ajax request,like below.

Ext.Ajax.request({
  url: 'http://myurl',
  method: 'POST',
  cors: true,
  useDefaultXhrHeader : false,
  success: function () {
    alert('success');
  },
  failure: function () {
    alert('failure');
  }
});

这篇关于煎茶 ExtJS.无法使用 Ext.Ajax.request 跨域发送 POST 请求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆