3

2 つの簡単な質問:

  1. http アダプターを介して行われるすべての http 要求は、最初に Worklight サーバーを通過しますか?

  2. もしそうなら、パブリック Web サイトへの http アダプター要求でさえ、yahoo サイトへの株価の要求も最初に worklight サーバーを経由し、次に yahoo Web サイトを経由するということですか? その場合、worklight サーバーを介さずに http 要求を行うにはどうすればよいですか? 「中間」サーバー (workligth サーバー) なしで yahoo Web サイトに直接アクセスしたいだけです。

4

5 に答える 5

18

1)すべてのhttpリクエストはhttpアダプターを介して最初にworklightサーバーを通過しますか?

はい。Worklightアダプターは、MozillaRhinoを使用してWorklightサーバーでJavaScriptを実行することで機能します。アダプターの詳細については、IBM Worklight GettingStartedModulesを参照してください。アダプタ固有の詳細については、モジュール5および6を参照してください次に試すことができるコードサンプルもあります。APIの資料はIBMInfoCenterにあります。役立つと思われるアダプタについて説明しているDeveloperWorksの記事もあります。

2)もしそうなら、公開Webサイトへのhttpアダプター要求でさえ、yahooサイトへの株価の要求も最初にworklightサーバーを経由し、次にyahoo Webサイトの隣を通過すると言うのでしょうか?

はい。

「中間」サーバー(つまりworkligthサーバー)なしでyahooWebサイトに直接アクセスしたいだけです。

IBM WorklightにはjQueryが付属しており、 ajaxメソッドを使用できます。次に例を示します。

WLJQ.ajax( "http://finance.yahoo.com/d/quotes.csv?s=DOW+MSFT+AAPL+GOOG&f=snl1" )
.done(function (data) {
    console.log(data);
});

WLJQは、Worklightが出荷するバージョンのjQueryの名前空間であることに注意してください。またはを使用してjQuery、または$を実行できます。var $ = WLJQ;var jQuery = WLJQ;

次のようなものが返されるはずです。

"DOW","Dow Chemical Comp",30.89
"MSFT","Microsoft Corpora",27.37
"AAPL","Apple Inc.",448.97
"GOOG","Google Inc.",790.13
于 2013-02-27T04:08:21.630 に答える
0

クライアント・サイドでアダプター API を使用する場合、リクエストは Worklight サーバーを通過します。クライアント側から AJAX リクエストを作成し、サーバーをスキップすることもできます。基本的に、Cordova と同じ方法でサーバー リクエストを作成します。つまり、ホワイトリストを使用して、リクエストがサード パーティのサーバーにアクセスできるようにします。

于 2013-02-27T00:52:47.213 に答える
0

もちろん、単純な jquery ajax 呼び出しを使用してアダプター関数を呼び出さずに直接アクセスできます。

$.ajax({
       url: url,
       data: data,
       success: success,
       dataType: dataType
});

また

$.get(url, function() {
    alert( "success" );
})
.done(function() {
    alert( "second success" );
})
.fail(function() {
    alert( "error" );
})
.always(function() {
   alert( "finished" );
});
于 2014-05-09T17:31:46.827 に答える
0

http アダプターを介して行われるすべての http 要求は、最初に Worklight サーバーを通過しますか?

絶対にありません、それは完全にあなた次第です。HTTP アダプターを使用している場合、HTTP 要求は Worklight Server から開始され、応答を返します。

もしそうなら、パブリック Web サイトへの http アダプター要求でさえ、yahoo サイトへの株価の要求も最初に worklight サーバーを経由し、次に yahoo Web サイトを経由するということですか? その場合、worklight サーバーを介さずに http 要求を行うにはどうすればよいですか? 「中間」サーバー (workligth サーバー) なしで yahoo Web サイトに直接アクセスしたいだけです。

HTTP アダプターを使用している場合は、最初の回答に従って Worklight Server を通過します。

中間サーバーが必要ない場合は、Javascript /Ajax レイヤーまたはネイティブ (Android/iOS/Windows..) を使用して、HTTP 要求を実行する従来の手段を使用できます。

アダプターは、要求が登録済みデバイスから開始されたことを確認するために Worklight が使用するセキュリティーに関して有用です。認証は、デバイス・トークンの交換などによって行われます。

于 2014-10-31T07:06:21.573 に答える
-1

WL のアダプター アーキテクチャに関する重要な点が欠けていると思います。アダプターはサーバー内に存在するため、定義上、それを使用して行うすべての要求はサーバーを「通過」します。ただし、情報は WAS (または Tomcat) サーバーを経由しません。

アダプターを使用したくない理由はありますか? RESTful http 呼び出しまたはデータベース クエリからデータを取得するのが簡単になるため、これを使用することをお勧めします。

アダプターを回避したい場合は、クロスドメイン認証に問題があります。私はこの分野での経験があまりありませんが、jQuery.ajax() のようなものを使用して回避できるかもしれません。

于 2013-02-26T21:50:03.690 に答える