Jquery AJAX経由でREST APIを使用してSP 2013サイトを作成しようとしています。私は '/ _api/contextinfo'呼び出しからREQUEST_DIGESTを抽出しました。次に、 '/ _api/web/webinfos/add'コールのX-RequestDigestヘッダーを設定しようとしているときに、HTTP 403応答コードを取得しているブラウザーがメソッド 'OPTIONS'を使用した飛行前要求を送信します。私の理解によると、ブラウザは、CORSの原則によると、認証情報を送信していないが、FedAuthのクッキーを期待している。 SP 2013で 'OPTIONS'動詞を設定する必要があり、このための明確な解決策が見つかっていないようです。私の理解は正しいですか?その場合、誰も解決策を提供できますか?Jquery AJAX経由でREST APIを使用してSP 2013サイトを作成
答えて
私のSharepoint 2013環境で動作するこのコードを作成しました。 /_api/web/webinfos/add
を禁止403でresquest結果:
まず、私はこのような相対URLで私のAJAX要求をしてみてください。
それから私はして再試行:_spPageContextInfo.webAbsoluteUrl + "/_api/web/webinfos/add"
と、この時間は、それが正常に動作します。だから、
私は、相対URLを使用する場合/_API /ウェブ/ webinfosは/使用など、その同じを追加します。
の理由は、私のサイトコレクションのURLパターンがあるということです:
現在のサイトコレクションSharepointのアドレスではなく、クロスサイトスクリプティングエラーが返されるためです。
しかし、私は_spPageContextInfo.webAbsoluteUrl +それは私に、サイトコレクションの完全なURLを与える "/ _API /ウェブ/ webinfos /追加" を使用します。
ここにあります完全なスクリプト:
<script language="JavaScript" type="text/javascript">
function createSubsiteUsingREST(data,siteTitle,siteUrl,siteDescription) {
$.ajax({
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/webinfos/add",
type: "POST",
headers: {
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
data: JSON.stringify({
'parameters': {
'__metadata': {
'type': 'SP.WebInfoCreationInformation'
},
'Url': siteUrl,
'Title': siteTitle,
'Description': siteDescription,
'Language': 1033,
'WebTemplate': 'sts',
'UseUniquePermissions': true
}
}),
success:function(){
alert('SubSite Created with success!');
},
error:function(){
alert('oups! An error occured during the process of creating this new SubSite!');
}
});
}
$(document).ready(function() {
$('#btnCreateSubSiteWithREST').on('click',function() {
var siteTitle = $('#txtSiteTitle').val();
var siteUrl = $('#txtSiteUrl').val();
var siteDescription = $('#txtSiteDescription').val();
createSubsiteUsingREST(siteTitle,siteUrl,siteDescription);
});
});
</script>
<input type="button" id="btnCreateSubSiteWithREST" value="Create New SubSite Using REST">
<div><label>Title of the SubSite : </label><input type="text" id="txtSiteTitle"></div>
<div><label>URL of the SubSite : </label><input type="text" id="txtSiteUrl"></div>
<div><label>Description of the SubSite : </label><input type="text" id="txtSiteDescription"></div>
希望このヘルプ!
サンプルコードをありがとう。私はabsoluteUrlを使用していると私はコールがクロスドメインの呼び出しである結果として別のドメイン上のWebアプリケーションからSharepointサーバーの外部から生成されていることを言及することを忘れたと思う。コールでcrossDomainパラメータを使用しましたが、カスタムヘッダー(X-RequestDigest)によって、拒否されているプリフェッチ要求が生成されています(403)。 OPTIONS要求を受け入れてHTTP 200を返すようにSPを設定する方法が必要です。 – user7541515
- 1. REST APIを使用して新しいサイトを作成
- 2. PHP cURLを使用してREST API経由でJSONを取得
- 3. gulp spsaveを使用してREST API経由でSharePointにファイルをアップロード
- 4. VSTS作業項目リスト(REST API経由)
- 5. Ajax経由でapache openmeetings APIで新しいユーザーを作成する
- 6. SharePoint 2013 REST API AJAX更新ワークフロータスク
- 7. REST API経由で添付ファイルフィールドをアップロード
- 8. BlazegraphはREST API経由で名前空間を作成します
- 9. Microsoft Graph API経由でマスターカテゴリを作成
- 10. ノードJSを使用してREST APIとMVC Webアプリケーションを作成する理由
- 11. Codeigniterモバイル経由のREST APIアクセス
- 12. REST API経由でJIRA 4.4で問題を作成できますか?
- 13. Rocket Chat - Rest API経由でログイン
- 14. ZOQL Zuora REST API経由で実行
- 15. 新しいGoogleサイトで作成したサイトをAPI経由で公開しますか?
- 16. 投稿MySQL結果jQuery経由でAJAXを使用
- 17. AEMパブリッシュノードと作成者ノードをREST API経由で区別する方法
- 18. Rest c#httpClient経由でjira問題を作成する
- 19. Rails 5ブートストラップモードを使用してAJAX経由でログインする
- 20. PingFederate/sp/adapter用のREST APIが動作しません
- 21. JQuery経由のデータ転記Ajax
- 22. forminataを使用してfileinput、textinput、複数のチェックボックスをフォームデータを使用してjquery ajax経由で投稿
- 23. REST APIを使用してSharepoint 2013ライブラリフォルダからファイルを取得できない理由
- 24. VS 2013を使用してAjaxツールキットが動作しない
- 25. Rest APIを使用して製品を作成する:Magento V2.0
- 26. H2O REST APIを使用してH2OFrameを作成する方法
- 27. RALLYでREST API経由で作成したフィルタを保存(再利用)する方法はありますか
- 28. jQuery ajaxコール(REST APIを順番に使用)
- 29. jQueryとRESTを使用してAmazon S3バケットを作成する
- 30. AJAXを経由して送信ボタンを
既存のサイトコレクション内にサイトコレクションまたはサブサイトを作成することについて話していますか? –
サイトテンプレートを使用して既存のサイトコレクション内にサブサイトを作成しようとしています。 – user7541515