2017-02-28 5 views
0

Ich versuche, die Openrainbow-API in meinem AngularJS mit ASP.NET MVC-Anwendung einzurichten. Es gibt zwei Möglichkeiten, die openrainbow API zu konfigurieren und zu verbinden. With AngularJS und Without AngularJSDie * .json-Datei kann nicht geladen werden: (404-Datei nicht gefunden)

Ich habe es ohne AngularJS konfiguriert und es funktioniert perfekt. Aber ich möchte es konfigurieren und mit AngularJS verbunden werden.

Unten ist der Code, den ich aus dem API Documentation verwende.

AngularJS-Controller

var sample = angular.module('sample', ['sdk']); 

sample.controller("sampleController", [ 
    "rainbowSDK", 
    function(sdk) { 
    "use strict"; 

    var onReady = function onReady() { 
     console.log("[DEMO] :: Rainbow SDK is ready!"); 
    }; 

    var onLoaded = function onLoaded() { 
     console.log("[DEMO] :: Rainbow SDK has been loaded!"); 

     sdk.initialize().then(function() { 
     console.log("[DEMO] :: Rainbow SDK is initialized!"); 
     }).catch(function() { 
     console.log("[DEMO] :: Something went wrong with the SDK..."); 
     }); 
    }; 

    $rootScope.$on(sdk.RAINBOW_ONREADY, onReady); 

    $rootScope.$on(sdk.RAINBOW_ONLOADED, onLoaded); 
    } 
]); 

HTML VIEW

<!DOCTYPE html> 
<html ng-controller="sampleController"> 
<head> 
    <title>OpenRainbow API</title> 
</head> 
<body> 

    <script src="//api.openrainbow.com/sdk/web/libs/loader-sdk.min.js" data-main="./config.json"></script> 

</body> 
</html> 

config.json Datei

{ 
    "libraries": { 
     "prerequisites": [ 
      "//code.jquery.com/jquery-2.1.3.min.js", 
      "//cdn.jsdelivr.net/momentjs/2.15.1/moment-with-locales.min.js", 
      "//cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.min.js" 
     ], 
     "sdk": { 
      "official": [ 
       "//api.openrainbow.com/sdk/web/libs/vendors-sdk.min.js", 
       "//api.openrainbow.com/sdk/web/libs/rainbow-sdk.min.js" 
      ], 
      "default": "official" 
     }, 
     "after": [ 
     ] 
    }, 
    "app": { 
     "bootstrap": "sample", 
     "key": { 
      "appID":"", 
      "appSecret":"" 
     }, 
     "js": [ 
      "./src/js/sdkSampleApp.js", 
      "./src/js/components/connection/connectionCmp.js" 
     ], 
     "css": [ 
      "src/styles/sdkSampleApp.css", 
      "src/js/components/connection/connectionCmp.css" 
     ] 
    }, 
    "settings": { 
     "verboseLog": true, 
     "disableCache": true, 
     "enableLoader": true 
    } 
} 

Console Output:

enter image description here

Das Datenhaupt Attribut ist die config.json Datei aus dem Pfad nicht geladen ist. Der Pfad der Datei ist korrekt, da die Datei auf diesem Pfad existiert.

Antwort

1

Nun habe ich den folgenden Weg verwendet, um es zum Laufen zu bringen. In der Datei web.config meines Projekts fügte ich die folgenden Zeilen für MIME Types hinzu, um alle JSON-Dateien zuzulassen. Jetzt funktioniert es einwandfrei.

<system.webServer> 
    <staticContent> 
     <mimeMap fileExtension=".json" mimeType="application/json; charset=UTF-8" /> 
    </staticContent> 
</system.webServer> 

Konsolenausgabe:

enter image description here

Verwandte Themen