【问题标题】:enable CORS to call JSON REST from Cordova App启用 CORS 从 Cordova 应用程序调用 JSON REST
【发布时间】:2016-07-03 13:59:23
【问题描述】:

我正在用 apache cordova 制作一个应用程序......我需要从 wordpress 网站上发帖。

在你说它是重复的之前,请阅读以下几点:

  1. 所以,我安装了 Rest Api v2:http://v2.wp-api.org/

  2. 像这样启用 cors: < ? header ( " Access- Control-Allow -Origin : * " ) ; ? >在主题的header.php中,甚至在wp-content/plugins/json-api/singletons/api.php

  3. 我已经尝试安装这个:https://wordpress.org/plugins/wp-cors/

  4. 为 GET REST API 调用此方法:

                  jQuery.ajax({
                     type: "GET",
                     url: "myURL",
                     contentType: "application/json; charset=utf-8",
                     dataType: "json",
                     success: function (data, status, jqXHR) {
                          alert("suucess");
                     }
    
                 });
    

结果总是一样的,firebug返回我说CORS被锁定了,所以我不能从外部提出要求......我该如何解决??

【问题讨论】:

    标签: json wordpress cordova rest cors


    【解决方案1】:

    您好,不需要将它添加到您的主题标题中,只需将以下代码添加到 json_api_init 内的 wp-content/plugins/json-api/json-api.php 文件中() 函数

       if (isset($_SERVER['HTTP_ORIGIN'])) {
       header("Access-Control-Allow-Origin: *");
       header('Access-Control-Allow-Credentials: true');    
       header("Access-Control-Allow-Methods: GET, POST, OPTIONS"); 
       }   
    
     // Accept Cross Domain Transfer.
       if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {
       if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))
       header("Access-Control-Allow-Methods: GET, POST, OPTIONS");         
       if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))
       header("Access-Control-Allow-Headers:{$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");
       exit(0);
       }
    

    【讨论】:

      【解决方案2】:

      我已经解决了将DataType: "json" 更改为DataType: "jsonp"

      解决方法:将DataType设置为jsonp。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-04-17
        • 1970-01-01
        • 1970-01-01
        • 2018-02-04
        • 2016-07-21
        • 1970-01-01
        • 2013-02-03
        • 2015-09-02
        相关资源
        最近更新 更多