2

OrientDB JavaScript API を Web アプリで動作させる方法を理解するのに少し苦労しています。

OrientDB Studio Web アプリのソース コードを調べてみたところ、orientdb JavaScript API と AngularJS を組み合わせて使用​​していることがわかりました。これは非常に魅力的ですが、自分の側で、インポートされた単純な Web ページを作成してみました。 orientdb-api.js と jquery ライブラリ、そしてそれは機能しませんでした。

これが私のウェブページの内容です:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="orientdb-api.js"></script>
    <title></title>

    <script>
        function connect() {
            var orientdb = new ODatabase("http://localhost:2480/GratefulDeadConcerts");
            var orientdbinfo = orientdb.open();
        }
    </script>
</head>
<body>
    <input type="button" value="Connect to OrientDB" onclick="connect()"/>
</body>
</html>

JS で localhost を使用していますが、クライアントからサーバー上の orientdb データベースにアクセスする意味がないように思えます。何かが足りないと思いますが、それでも OrientDB に JS API を使用したいと思っています。Node.js などを使用する必要がありますか、それともスタンドアロンの JS ファイルで十分ですか?

同封の HTML ファイルで JS コードを実行すると、このエラー メッセージが表示されます。

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:2480/database/GratefulDeadConcerts. This can be fixed by moving the resource to the same domain or enabling CORS.

ヘルプ、アドバイス、またはリソースをいただければ幸いです。

よろしく、ジェレミー

4

1 に答える 1

7

CORS はデフォルトでは有効になっていません。

このエントリをconfig/orientdb-server-config.xml

<parameter name="network.http.additionalResponseHeaders" value="Access-Control-Allow-Origin: * ;Access-Control-Allow-Credentials: true;Access-Control-Allow-Headers: Content-Type;Access-Control-Allow-Methods: POST, GET, DELETE, HEAD, OPTIONS, PATCH, CONNECT, TRACE " />

その上

<parameter value="utf-8" name="network.http.charset"/>

コロンの後にスペースを使用しないことも重要です;

于 2014-12-23T07:42:36.217 に答える