【问题标题】:Returning JSON through angular and bible.org api or esvapi.org通过 angular 和 bible.org api 或 esvapi.org 返回 JSON
【发布时间】:2015-12-03 17:07:43
【问题描述】:

我一直在研究这个,但无法找到或理解一些解决方案,所以我希望在这里得到一些帮助。我正在使用 Asp.net 并构建一个需要使用圣经 api 的应用程序。我喜欢问题中列出的两个。每次我调用 esvapi 它都会成功返回,但我无法查看数据。我在控制台中收到错误。

XMLHttpRequest cannot load http://www.esvapi.org/v2/rest`/passageQuery?key=8834092f0c58fcda&passage=James2. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:59324' is therefore not allowed access.`

我见过其他人出现此错误,我有疑问。

  1. 如果我理解正确,我会得到这个,因为出于安全目的,服务器阻止我查看数据。甚至可能是浏览器(这不仅仅是一个 chrome 问题)问题。因此,如果我需要从 Angularjs 向响应标头中添加信息以阻止此操作,该怎么做。有经验的吗?

  2. 我是否需要联系任何人以阻止服务器以这种方式响应...我对此表示怀疑,但我想我会问。我已经有有效的 api 密钥。

  3. bible.org 网站 api 密钥在应用于我的代码时令人困惑。在 esvapi 上,我只添加了一个带有键的标题:“keypass”,我只有 CORS 问题。但是对于 bible.org,我无法弄清楚如何实现 api 密钥和密码。见下文...我说令牌:密钥:用户名。如果我将 api 放在浏览器中,我会弹出一个添加用户名和密码的窗口。用户名是我的密钥,密码被忽略。我尝试将用户名作为密钥,但这并没有削减它。无论如何,我都需要修复 CORS 问题并将信息添加到响应标头以查看响应数据。

    $scope.search = function() {
        return $http.get("http://www.esvapi.org/v2/rest/passageQuery?&passage=" + $scope.bo + $scope.chap, {
            headers: {
                "key?token?orusername?": "",
                ///thought i saw someone do this...don't know if this is right
                "Access-Control-Expose-Headers": "Content-Disposition",
            }
        }).success(function (data, status, headers, config) {
            $scope.book = data.Book;
            $scope.chapter = data.Chapter;
            $scope.output = data.Output;
        }).error(function (data, status, headers, config) {
            $scope.message = "Oops... something went wrong";
    
        });
    

任何输入都会有所帮助。谢谢!

我实际上有一个圣经 api 工作......只是一个我不喜欢的版本,并且该 webites api 上没有另一个版本。

【问题讨论】:

    标签: json angularjs api asp.net-web-api


    【解决方案1】:

    将 get $http.get 调用更改为 $http.jsonp 并希望它有效。您正在使用跨站点脚本。在这些情况下,有时您可以通过 JSONP 调用侥幸逃脱,有时则不能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-22
      • 1970-01-01
      • 1970-01-01
      • 2015-03-14
      • 1970-01-01
      • 2012-03-11
      相关资源
      最近更新 更多