2011-07-26 35 views
1

私はgrailsプロジェクトをサーバーとして使用しています。別のjavascriptプロジェクトからリクエストを受け取ります。このリクエストはjsonリクエストです。Node.jsを使用してクライアントからサーバーにjson要求を送信する

問題: サーバーは、私はそれを使用することができますどのように、私はNode.jsのを使用しようとするすべての要求 を受けていませんか?

注:GrailsのサーバープロジェクトのURLマッピングで 私はこのURLを宣言し、特定のコントローラに特定のアクションにアクセスするために

おかげ

+0

コードが存在するページのURLを教えてください。 – Pointy

+0

それは私のPCのローカルfile.htmlです(ファイル:///home/danny/workspace/test.html) –

+0

それはあなたの問題です。 – Pointy

答えて

1

ブラウザは、あなたがAJAXリクエストを発行することはできません別のドメインのURL。あなたが投稿したクライアントコードが、あなたのコメントで言うように、マシン上の "file:" URLにある場合、ブラウザはXMLHttpRequestを介してそれらの "http:// localhost" URLへのアクセスを許可しません( " $ .ajax() ")。それは「同じ起源の政策」と呼ばれています。

"http:// localhost:8058"のURLからテストページを提供できる場合は、サーバーと通信できます。

+0

別の方法があれば、jsonリクエストを送信する方法はありますか? –

+0

@ danny-london:クロスドメインリクエストを送信する場合は、ウェブブラウザ。 JavaScriptでこれを行うには、[NodeJS](http://nodejs.org/)を使用してください。しかし、他の多くのプログラミング言語でも、JSON呼び出しを作成することができます:Perl、PHP、Python ... – dolmen

+0

GETクロスドメイン要求が必要な場合は、JSONP要求タイプを使用する必要があります。 POSTには、CORSの設定(ブラウザに問題があります)またはEasyXDMライブラリ –

0

.htmlと同じディレクトリにファイルjquery-1.6.2.jsがあることを確認してください。

+0

を使用するという2つのオプションがあります。jquery-1.6.2.jsは.htmlファイルの同じディレクトリにあります。他の考え方 –

+0

その場合、 '$'を知らなければなりません。しかし、私はあなたがそれらのコメントを既に削除したのを見ます。 –

+0

はい、このエラーを解決しました。$は現在知られています。問題は、サーバーがクライアントからの要求を受信しないということです –

関連する問題