javascript - Jquery跨域问题

标签 javascript php jquery ajax cross-domain

我正在尝试创建一个 Chrome 扩展程序,它将从此 URL 查找输入词汇的含义:http://hanviet.org/ajax.php?query=%E6%97%A5&methode=normal

我使用 jquery 进行了 ajax 调用,但由于跨域问题而出现错误:“请求的资源上不存在“Access-Control-Allow-Origin” header 。Origin“null”为因此不允许访问”。好的,我认为我不需要直接向 URL 发出请求,而是需要通过代理页面调用它,如下所示:

$.get("/myproxy.php?query=日&methode=normal", function( data ) {
    alert( "Load was performed." );
});

谷歌搜索后,有另一个名为 DHC 的 Chrome 扩展程序可以发出 http 请求:https://www.sprintapi.com/dhcs.html 。并且效果完美!

我想知道 DHC 工具是否也通过其代理发送请求,或者还有另一种我不知道的直接请求方式。

谢谢!

最佳答案

    $.ajax({
        type: "GET",
        url: 'URL',
        jsonp: 'callback',
        dataType: 'jsonp',
        data: {},
        success: loginSuccess,
        crossDomain: true,
        error: ajaxFailed,
        contentType: 'application/json',
        async: false
    });

    function ajaxFailed(result) {
        alert("Failed: " + result.status + ' ' + result.statusText);
    }

    function loginSuccess(data) {
        alert('Result: ' + data.d);
    }

关于javascript - Jquery跨域问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25052502/

相关文章:

javascript - 发布文件是否需要 <form> 标签和按钮?

javascript - 你能在页面 "onUnload"事件期间执行 Fancybox 吗?

php - 从 imap_search() 读取电子邮件时出现额外字符

php - 如何直接从浏览器 URL 调用自定义插件功能

php - CodeIgniter 中 Active Record 的 "count_all_results"和 "where"问题

php - 在 Web 开发 MVC 模式中,将大量 jQuery 代码放置在哪里?

c# - 在 javascript 中访问 ASP HiddenField

javascript - 将附加 html 添加到 QUnit 输出结果以进行特定测试

javascript - 使用 jQuery 增加或减少类名

javascript - 滑出菜单不滑出