无法使用phonegap和ajax调用将json数据发布到远程服务器

时间:2015-10-28 03:46:56

标签: javascript json ajax cordova

我正在尝试从运行在移动数据(phonegap框架)上的javascript函数向远程服务器发送json数据。代码如下所示

import java.util.*;

public class SqrFoot {

public static void main(String[] args) {
    //creates a scanner object
    Scanner scan = new Scanner(System.in);

    //takes input
    System.out.println("Enter the length : ");
    double length = scan.nextDouble();

    System.out.println("Enter the width : ");
    double width = scan.nextDouble();

    //calculates and displays answer
    System.out.println(length*width + " Sqr ft");
    }
}

我研究过相同的原产地政策不是问题,大多数人都可以通过这个

http://samcroft.co.uk/2012/posting-data-from-a-phonegap-app-to-a-server-using-jquery/ http://www.indiageeks.in/phonegap-jquery-ajax-example-jsonjavascript-object-notation-response/

注意:我通过vpn网络连接到远程服务器。这可能是一个问题。 此外,我无法得到失败消息,这是错误的一部分:AJAX中的function()

任何帮助都将受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

在index.html文件中使用<meta>参数检查http-equiv="Content-Security-Policy"代码。适当(将您的域列入白名单)更改。

这可能有助于"No Content-Security-Policy meta tag found." error in my phonegap application

答案 1 :(得分:0)

如果它的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"); 
     }   

     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);
     }