使用Javascript/Jquery在用户的mysite中创建列表和列表项 [英] Create List and list item in user's mysite using Javascript/Jquery

查看:99
本文介绍了使用Javascript/Jquery在用户的mysite中创建列表和列表项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我正在尝试使用JS在我的网站的用户中创建列表和列表项,但是我遇到访问被拒绝或未经授权的错误.当我执行上述操作时,我也遇到错误.作为SharePoint网站和用户的网站,这似乎是一个跨域问题 我的网站位于不同的Web应用程序中.有人可以帮我吗?

I am trying to create list and list items in users my site using JS but I am getting access denied or unauthorized error. I am also getting below error when I am performing above operation. It seems its a cross domain issue as SharePoint site and user's my site are in different web application. Can anyone please help me with this. 

对预检请求的响应未通过访问控制检查:所请求的资源上没有"Access-Control-Allow-Origin"标头.来源

关于,

Ankit

推荐答案

这是我的测试步骤,供您参考.

在mysite网站功能中启用团队合作列表"功能.

用户从其他网站集中创建列表.

<script type="text/javascript" src="/_layouts/15/js/jquery.min.js"></script>    
    <script type="text/javascript">        
        function CreateListInMySite() {
            //Get the current user's account information
            var userid = _spPageContextInfo.userId;


.ajax({ 网址:_spPageContextInfo.webAbsoluteUrl +"/_api/web/getuserbyid(" + userid +)", 方法:"GET", 标头:{ "accept":"application/json; odata = verbose", }, 成功:功能(数据){ var loginName = data.d.Title; SP.SOD.executeFunc('SP.js','SP.ClientContext',function(){ //mysite网址基于您自己的配置 var clientContext = new SP.ClientContext("http://sp:15000/my/" + loginName +"); var oWebsite = clientContext.get_web(); var listCreationInfo =新的SP.ListCreationInformation(); listCreationInfo.set_title('我的测试列表'); listCreationInfo.set_templateType(SP.ListTemplateType.genericList); this.oList = oWebsite.get_lists().add(listCreationInfo); clientContext.load(oList); clientContext.executeQueryAsync(Function.createDelegate(this,this.onQuerySucceeded),Function.createDelegate(this,this.onQueryFailed)); }); }, 错误:函数(err){ alert(JSON.stringify(err)); } }); } 函数onQuerySucceeded(){ var result = oList.get_title()+'created.'; 警报(结果); } 函数onQueryFailed(sender,args){ alert('请求失败.'+ args.get_message()+'\ n'+ args.get_stackTrace()); } </script> < input id ="Button1" onclick =" CreateListInMySite()" type ="button"值=按钮"; />
.ajax({ url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/getuserbyid(" + userid + ")", method: "GET", headers: { "accept": "application/json;odata=verbose", }, success: function (data) { var loginName = data.d.Title; SP.SOD.executeFunc('SP.js', 'SP.ClientContext', function () { // the mysite url is based on your own configuration var clientContext = new SP.ClientContext("http://sp:15000/my/"+loginName+""); var oWebsite = clientContext.get_web(); var listCreationInfo = new SP.ListCreationInformation(); listCreationInfo.set_title('My test List'); listCreationInfo.set_templateType(SP.ListTemplateType.genericList); this.oList = oWebsite.get_lists().add(listCreationInfo); clientContext.load(oList); clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed)); }); }, error: function (err) { alert(JSON.stringify(err)); } }); } function onQuerySucceeded() { var result = oList.get_title() + ' created.'; alert(result); } function onQueryFailed(sender, args) { alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace()); } </script> <input id="Button1" onclick="CreateListInMySite()" type="button" value="button" />

结果:


这篇关于使用Javascript/Jquery在用户的mysite中创建列表和列表项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆