2016-05-18 6 views
0

Ich erstelle Rest api, der nur html + css + js Dateien enthält. Ich habe einfache Funktion Login, die von Json erhalten Daten erhalten. Wenn ich diese App auf meinem Server ausführen, habe ich einen Ajax-Fehler: Status Bereit 0, Status 0 Aber wenn ich diesen Code auf http auf verschiedenen Port ausführen, funktioniert es korrekt. prüfe ich eine zufällige json Dateien aus dem Internet mit http und https-URLs: 1. http - http://jsonplaceholder.typicode.com/posts?userId=1 2. https - https://api.github.com/users/mralexgray/repos Und es ist richtig ArbeitPhone Gap Ajax fail on https

Hier meine js Funktion wchich auf die Schaltfläche klicken Sie auf Dokument mit dem Titel bereit:

function log_in() { 


$.ajax({ 
    type: 'GET', 
    async: true, 
    crossDomain: true, 
    /*url: "http://jsonplaceholder.typicode.com/posts?userId=1",*/ 
    /*url: "https://api.github.com/users/mralexgray/repos",*/ /*na debug i relese dziala*/ 
    url:"https://system.fastdata.com.pl:4567/apps/leadinfo/f/json.txt", 
    /*url: "https://system.fastdata.com.pl:4569/apps/x/y/json.txt",*/ 
    data: {}, 

    beforeSend: load_start(), 
    success: function (data) { 
     window.test = data; 
     console.log("autoryzowano"); 
     console.log(data); 
     $("#login_error").append("tak", data[0]); 
     $("#login_error").css("display", "block"); 
     $("#password").val(''); 
     $("#username").val(''); 
     $("#contact_info_load").remove(); 
    }, 
    error: function (xhr,err) { 
     console.log("nie autoryzowano"); 

     $("#login_error").append("readyState: "+xhr.readyState+"\nstatus: "+xhr.status); 
     $("#login_error").append("responseText: "+xhr.responseText); 
     $("#login_error").css("display", "block"); 
     $("#password").val(''); 
     $("#username").val(''); 
     $("#contact_info_load").remove(); 
    } 
}); 

}

und hier meine config.xml:

<?xml version="1.0" encoding="UTF-8"?> 

<!-- config.xml reference: https://build.phonegap.com/docs/config-xml --> 
<widget xmlns  = "http://www.w3.org/ns/widgets" 
    xmlns:gap = "http://phonegap.com/ns/1.0" 
    id  = "Lead Info" 
    version = "1.0.0"> 

<name>LEADInfo</name> 

<description> 

</description> 

<author > 
    FASTDATA Team 
</author> 
<icon src="fa-cogs.png" /> 
<!-- 
    If you do not want any permissions to be added to your app, add the 
    following tag to your config.xml; you will still have the INTERNET 
    permission on your app, which PhoneGap requires. 
--> 
<preference name='phonegap-version' value='cli-5.2.0' /> 
<!--<preference name='phonegap-version' value='cli-6.0.0' />--> 
<preference name="android-build-tool" value="ant" /> 


<preference name="orientation"    value="default" />  <!-- all: default means both landscape and portrait are enabled --> 
<preference name="target-device"    value="universal" />  <!-- all: possible values handset, tablet, or universal --> 
<preference name="fullscreen"     value="true" />   <!-- all: hides the status bar at the top of the screen --> 
<preference name="webviewbounce"    value="true" />   <!-- ios: control whether the screen 'bounces' when scrolled beyond the top --> 
<preference name="prerendered-icon"   value="true" />   <!-- ios: if icon is prerendered, iOS will not apply it's gloss to the app's icon on the user's home screen --> 
<preference name="stay-in-webview"   value="false" />   <!-- ios: external links should open in the default browser, 'true' would use the webview the app lives in --> 
<preference name="ios-statusbarstyle"   value="black-opaque" /> <!-- ios: black-translucent will appear black because the PhoneGap webview doesn't go beneath the status bar --> 
<preference name="detect-data-types"   value="true" />   <!-- ios: controls whether data types (such as phone no. and dates) are automatically turned into links by the system --> 
<preference name="exit-on-suspend"   value="false" />   <!-- ios: if set to true, app will terminate when home button is pressed --> 
<preference name="show-splash-screen-spinner" value="true" />   <!-- ios: if set to false, the spinner won't appear on the splash screen during app loading --> 
<preference name="auto-hide-splash-screen" value="true" />   <!-- ios: if set to false, the splash screen must be hidden using a JavaScript API --> 
<preference name="disable-cursor"    value="false" />   <!-- blackberry: prevents a mouse-icon/cursor from being displayed on the app --> 
<preference name="android-installLocation" value="auto" />   <!-- android: app install location. 'auto' will choose. 'internalOnly' is device memory. 'preferExternal' is SDCard. --> 
<!-- 
    Define a specific version of PhoneGap to build into your app. 
    <preference name="phonegap-version"  value="3.5.0" /> 
--> 



<!-- Plugins --> 

<!-- Core plugins --> 
<gap:plugin name="org.apache.cordova.battery-status" /> 
<gap:plugin name="org.apache.cordova.camera" /> 
<gap:plugin name="org.apache.cordova.media-capture" /> 
<gap:plugin name="org.apache.cordova.console" /> 
<gap:plugin name="org.apache.cordova.contacts" /> 
<gap:plugin name="org.apache.cordova.device" /> 
<gap:plugin name="org.apache.cordova.device-motion" /> 
<gap:plugin name="org.apache.cordova.device-orientation" /> 
<gap:plugin name="org.apache.cordova.dialogs" /> 
<gap:plugin name="org.apache.cordova.file" /> 
<gap:plugin name="org.apache.cordova.file-transfer" /> 
<gap:plugin name="org.apache.cordova.geolocation" /> 
<gap:plugin name="org.apache.cordova.globalization" /> 
<gap:plugin name="org.apache.cordova.inappbrowser" /> 
<gap:plugin name="org.apache.cordova.media" /> 
<gap:plugin name="org.apache.cordova.network-information" /> 
<gap:plugin name="org.apache.cordova.splashscreen" /> 
<gap:plugin name="org.apache.cordova.vibration" /> 



<!-- Define app splash screen for each platform. --> 
<gap:splash src="res/screen/android/screen-ldpi-portrait.png"  gap:platform="android" gap:qualifier="port-ldpi" /> 
<gap:splash src="res/screen/android/screen-mdpi-portrait.png"  gap:platform="android" gap:qualifier="port-mdpi" /> 
<gap:splash src="res/screen/android/screen-hdpi-portrait.png"  gap:platform="android" gap:qualifier="port-hdpi" /> 
<gap:splash src="res/screen/android/screen-xhdpi-portrait.png"  gap:platform="android" gap:qualifier="port-xhdpi" /> 
<gap:splash src="res/screen/blackberry/screen-225.png"    gap:platform="blackberry" /> 
<gap:splash src="res/screen/ios/screen-iphone-portrait.png"   gap:platform="ios"  width="320" height="480" /> 
<gap:splash src="res/screen/ios/screen-iphone-portrait-2x.png"  gap:platform="ios"  width="640" height="960" /> 
<gap:splash src="res/screen/ios/screen-iphone-portrait-568h-2x.png" gap:platform="ios"  width="640" height="1136" /> 
<gap:splash src="res/screen/ios/screen-ipad-portrait.png"   gap:platform="ios"  width="768" height="1024" /> 
<gap:splash src="res/screen/ios/screen-ipad-landscape.png"   gap:platform="ios"  width="1024" height="768" /> 
<gap:splash src="res/screen/windows-phone/screen-portrait.jpg"  gap:platform="winphone" /> 


<gap:plugin name="cordova-plugin-geolocation" source="npm" /> 



<gap:config-file platform="ios" parent="CFBundleShortVersionString"> 
<string>100</string> 
</gap:config-file> 

<gap:plugin name="cordova-plugin-device" source="npm"/> 
<gap:plugin name="cordova-plugin-file" source="npm"/> 
<gap:plugin name="cordova-plugin-media" source="npm"/> 
<gap:plugin name="cordova-plugin-splashscreen" source="npm"/> 

<gap:plugin name="cordova-plugin-x-socialsharing" source="npm"/> 
<gap:plugin name="cordova-plugin-admobpro" source="npm" spec="2.9.6"/> 

<gap:plugin name="cordova-plugin-whitelist" source="npm"/> 
<allow-navigation href="*"/> 
<allow-intent href="*"/> 
<!--<access origin="*"/>--> 
<access origin="*" subdomains="true" /> 
<access subdomains='true' origin='*' /> 
<!--<platform name="android">--> 
    <!--<allow-intent href="market:*" />--> 
<!--</platform>--> 
<!--<platform name="ios">--> 
    <!--<allow-intent href="itms:*" />--> 
    <!--<allow-intent href="itms-apps:*" />--> 
<!--</platform>--> 

Weiß jemand, was mit meinem Code wron ist? Ist das ein SSL-Zertifikat auf Serverfehler?

Antwort

0

Sie vielleicht könnte versuchen, es wie diese

<access origin = "*" /> 
<allow-navigation href="https://*/*" /> 

Ich bin nicht sicher, aber vielleicht die globale ‚*‘ nur auf http sein könnte.