SOAP、Javascript、C#、Webservices、jQueryを使用したsharepoint2007用Windowsガジェットのリスト
-
11-12-2019 - |
質問
ユーザーを認証し、特定のURLからsharepointリストを取得するSharepoint2007用のガジェットを開発しようとしています,
最後の4日間、私はそれに取り組んでいて、それを作るさまざまな方法に出くわしましたが、解決策は半分完了しているので、うまくいかないか、助けを
Windows GadgetはScripting+HTMLを使用しているため、このガジェットを作成するために作業を続けるための次のオプションがあります,
- SharepointのSPLIST/SPWebを使用してリストを取得するVisual studioプロジェクト(dll)を作成し、JavaScriptとVisual Studioの「COM」を使用してそのdll(「クラス」)を読み取り、JavaScriptでデータを取得し、HTMLに表示このアプローチの問題は、Sharepoint SPLISTで「dll」を作成してガジェットフォルダーに入れると、クライアント(そこにsharepointがインストールされていないPc)で動作するかどう問題へのこのアプローチに関する助けを見つけようとしている間、私はちょっと同じことをしているこのプロジェクトを見つけますが、私がそれを変,
JavaScriptを使用してvisual studio Dllを読み取るGmailガジェット
- 問題を解決するための2番目のアプローチは、Sharepoint webservicesを使用するとすべてのリスト項目が取得されますが、JavaScriptでWebservicesを使用するのはそれほど簡単ではない
このリンクは、ドットネットプロジェクトでWebサービスを使用してリストアイテムを更新していますが、コメントではリストデータを取得する方法も
- 別の解決策は、以前のリンクのようにJqueryを使用してsharepointリストデータを取得することですが、ユーザー@gadgetを認証するにはどうすればよいですか?
私のお気に入りの解決策は、webサービスと一緒にSOAPまたはRESTを使用することです。SOAPを使用してSharepointリストデータを取得し、同時にユーザーを認証したいのですが、これに関する何百ものチュートリアルがありますが、実際には認証を行ったり、JavaScript/HTMLを使用してガジェットでこれがどのように機能するかを伝えたりすることはできません。,
私がオンラインで見つけたガジェットは、私が必要とするものに何らかの形で関連しているものはほとんどなく、動作しないか、私が望むものに変
Datapolis Sharepoint List Gadgetは、単に私のPC上で動作しません、althoその正確に私が探しているもの、考えられる理由は、それはSSL/httpsのために動作しません
ウェブサイトからニュースフィードを取得しているガジェットは、HTTPxml要求を送信しますが、RSSフィードを要求しますが、私は取り組んでいるsharepointサイトにRssフィード
これを読んでくれてありがとう私はあなたがあなたの知識を増やすか、それを共有することを願っています:)
編集 *私はクライアントオブジェクトモデル認証を使用できないMossを使用しているので、クライアントオブジェクトモデルとしてSharepoint MOSS"SPLIST"または"SPWEB"を使用す間違った情報のために本当に申し訳ありません*
解決
これをユーザーPCにインストールするので、標準のSharePoint API(Microsoft.SharePoint.dll)を使用できないため
2007を使用しているので、「クライアントオブジェクトモデル」(管理対象/ SilverlightまたはEMCAスクリプト)を使用することはできません。
a)SharePoint Webサービス(JavaScriptまたはJavaScriptであるjQueryのいずれか)。
これは、あなたのサイトを閲覧するのと同じメカニズムを介してあなたのガジェットがSharePointに認証されることを意味します - 通常統合されたWindows Auth。
これを開始する最初の場所は、優れた http://spservices.codeplex.com/ ライブラリーjQueryからWebサービスを簡単にコールすることができます。使用方法についてのヒントについては、ドキュメントを参照してください。
半分の完了プロジェクトの場合 http://sharepointsebar.codeplex.com/
b)SharePoint ServerにDLLを展開して、独自のカスタムWebサービスを作成してから、JavaScript経由で電話をかけます(おそらくUsign JSONまたは同様の
他のヒント
ガジェットでCOMコンポーネントを枯渇させる余裕がある場合は、最初のアプローチが機能します。Ccw.NETクラスのファサードにロジックをラップし(.NET SPクライアントOMを使用)、regasmによってCOMに登録します。すべての純粋な.NETでは、クラスはCOM互換で宣言(および記述)されます。
あなたはあまりにも後で制限第二のアプローチを見つけることができます;SP ClOMは、SP WSsより多くの機能をサポートしています。JQueryを投げてもあまり変わりません。(残念ながら、SP JS ClOMはSPページでのみ使用できます;ガジェットではありません。)
あなたが痛みの道を行くなら(JS;-)IWAはあなたに(Windows)SSO認証を与えるべきです。DLLからSP ClOMを呼び出すと、現在のユーザー(SSO)のWindowsセッショントークンを再利用するか、ユーザーが希望する場合は自分の形式で明示的に認証できます。(SP UIには、Windowsとは異なるユーザーとしてログインすることもできます。) どちらもサポートされています.
私は最初にDLLのアプローチを試してみます。
更新: おっと、あなたはSPにしています2007,ではありません2010-いいえSP ClOM.もっと早く気づくべきだったごめんなさい..それでも、WSを介してSPと通信する.NET DLLを作成できます。あなたはまだ設定することができます DefaultNetworkCredentials
に HttpWebRequest.Credentials
(残り)またはに .Credentials
SSO認証を取得するためのWSクライアントクラス(SOAP)の。またはあなた自身を作成します NetworkCredential
名前とパスワード付き。
---フェルダ