0

ファイアウォールの内側に存在し、証明書を必要とする SharePoint Web サービスと通信するための JavaScript を作成しています。

ブラウザに適切な証明書がインストールされています。WSDL を参照すると、ページが正常に読み込まれます。

しかし、javascript/jQuery を使用して Web ページから簡単な SPServices コマンド (GetListCollection) を実行すると、不正なエラーが発生します。

ブラウザから証明書を削除し、WSDL を読み込もうとしたところ、まったく同じエラーが発生しました。証明書を再インストールすると WSDL ビューは修正されますが、JavaScript はまだエラーになります。

私はこのコードを使用しています:

$().SPService({
  webURL:  [the url],
  operation: "GetListCollection",
  async: false,
  completefunc: function( xData, Status ) {
    console.log( 'Status: ' + Status );
    if ( !!xData ) {
      $( xData.responseXML ).find("Lists > List").each(function() {
        var $node = $(this);
        console.log( $node.attr( "Title" ) );
      });
    }
    else {
       alert('Null result.');
    }
  }
});

コードにタイプミスがある場合は申し訳ありません。私の開発ボックスはインターネットに接続されていないため、これはカットアンドペーストではありません。

(私のページでコードを実行している人の) ブラウザーにインストールされている証明書を Web サービス要求に埋め込む必要があると思いますが、答えを探す方法や場所がわかりません。どんなヒントでも大歓迎です。

4

1 に答える 1

0

元のページをロードしたサーバー以外の JavaScript を使用して、https 経由で他のサーバーと通信することは許可されていません。これは ajax/javascript セキュリティ仕様の一部です。したがって、このソリューションはまったく機能しません。サーバー側のプロキシされたリクエスト ソリューションを調べる必要があります。

于 2012-12-17T14:01:54.343 に答える