月別アーカイブ: 1 月 2015

HTTP 406 SharePoint の残りの部分の端点に対する角度の $http.get を使用するときのエラー

更新プログラム: 情報のこの素晴らしい作品を指摘したマルク広告 ndersson: http://blogs.office.com/2014/08/13/json-light-support-rest-sharepoint-api-released/. たくさん説明します。 :).

それが今まで、最悪、ブログの記事のタイトルがあります。! Anyhoo.

通常 O365 インスタンスに対して私のプロトタイピングの全力します。. 私は他の誰に影響を与える心配する必要はありませんので、私の個人的なインスタンスがある私. 余談として-覚えている我々 がモス – で私たちのラップトップ上の仮想マシンの周り実施呼び出し SQL Server, IIS, ハイパー V 対を決定します。. VMWare? Anyhoo.

角はこの環境を使用してアプリを開発していた, 他のものの間で, この:

$http.get(serverUrl)
.成功(関数(データ, ステータス, ヘッダー, 設定) {

var getLinksResponse = データ;

getLinksResponse.value.forEach(関数(その結果) {

// およびそう泡

これは 2 つの異なる SharePoint オンライン環境でうまく働いていた. ただし, とき私の同僚は Cloudshare インスタンスにそれを移植, 彼が得ていた、 HTTP 406 エラー (私はこれまで 1 つを得たの初めてだった, ... イェーイ, 思います). 我々 は研究のビットを行なったし、「受け入れる」ヘッダーがオフだったことに気づきました. SharePoint のオンラインは完全に満足していた:

受け入れる: アプリケーション/json

Cloudshare のインスタンスが (プレム上 SP であります。, 仮想サーバーでホストされています。) 古典的なしたかった"odata verbose ="同様の追加:

受け入れる: アプリケーション/json;odata = 詳細

それを修正するには, 我々 はそのヘッダーを追加:

var 構成 = {ヘッダー: {
' 受け入れる ': ' アプリケーション/json;odata verbose ='
}
};

$http.get(serverUrl,設定)
.成功(関数(データ, ステータス, ヘッダー, 設定) {

var getLinksResponse = データ;

getLinksResponse.value.forEach(関数(その結果) {

// およびそう泡

処分したこと、 406, しかし、それはまた、応答の形式を変更. 詳細は... 詳細. (ハハ!) 多くの変更が必要であり、ここで最終結果:

var 構成 = {ヘッダー: {
' 受け入れる ': ' アプリケーション/json;odata verbose ='
}
};

$http.get(serverUrl,設定)
.成功(関数(データ, ステータス, ヘッダー, 設定) {

var getLinksResponse = データ;

getLinksResponse.d.results.forEach(関数(その結果) {

// およびそう泡

これだけになって、 30 私たちの分の問題, だから私たちは尽きてください。. うまくいけば、誰かがこの役に立つ見つける.

</終了>

使い方: 同じページ上の複数の角度の SharePoint Web パーツを有効にします。

このブログの記事を複数を持つことができますどのように説明します Angular.js 基づく SharePoint web パーツ (コンテンツ エディター web パーツを介して参照されます。) 同じページに. コンテンツ エディター web パーツを呼んでいます。 (CEWP) Angular.js フレームワーク、角度 Web パーツ」.「を使用して構築された java スクリプトの設定を参照する

角のブートス トラップ プロセスは超簡単で、ちょうど約あらゆる例がインターネットで見つけるようになります。:

<html ng アプリケーション 'myApp' =>

<何とか/><何とか/><何とか/>

</html>

これは、ブレーク ダウン, ただし, 同じページ上の複数の角度の web パーツを表す複数の CEWP を有効にする場合. 角はのみ自動的にブートス トラップ最初 ng アプリ ディレクティブに対してそれがあると認める – 少なくとも角バージョン 1.3.6. ソリューションは、かなりシンプルな – 手動で代わりに、コードをブートス トラップ. 上記は今このような何かを変更します。:

<体>
<d
iv id =”bootstrapHere” ng コント ローラー =”コント ローラーとして myController”>
<何とか/><何とか/><何とか/>
</div>
</体>

<スクリプトを src =”//ajax.googleapis.com/ajax/libs/angularjs/1.3.6/angular.js”></スクリプト>

<スクリプト>
angular.bootstrap(angular.element(document.getElementById(“bootstrapHere”)),[' myApp']);
</スクリプト>

基本的には, ng アプリ要素で行うを使用して、ブートス トラップではなく, その要素に ID を平手打ち. [, ブートス トラップを使用します。() 角度の方法自体はブートス トラップを制御する実行時処理します。. 同じページ上の 3 つの異なる角度の web パーツでこれをテストしてみたし、魅力の作品.

</終了>

undefined私のブログを購読します。.

私は Twitter の上に従ってください。 http://www.twitter.com/pagalvin