重定向到SharePoint在线登录

时间:2015-07-22 09:02:00

标签: sharepoint asp.net-web-api odata office365

我在Azure上使用ASP.NET MVC部署了SharePoint提供程序托管应用程序。因为我们选择使用AngularJS,所以我们也添加了ASP.NET Web API控制器。我们已经设法通过cookie共享来自MVC控制器的令牌信息在API控制器中创建SharePoint客户端上下文(API控制器操作具有SharePointApiContextFilter,就像MVC控制器具有SharePointContextFilter来处理SharePoint客户端上下文创建一样)。 / p>

我添加了一个用于报告目的的OData控制器,它将数据导出到Excel(通过Excel的OData数据Feed导入)。我想让这个控制器在线验证SharePoint。 Excel已经实现了此功能,因为我尝试通过REST从SharePoint库导入数据。

使用Fiddler,我注意到SharePoint在线返回带有身份验证质询(WWW-Authenticate)标头的401响应:

   WWW-Authenticate:IDCRL Type =" BPOSIDCRL",   端点=" /sites/Test/_vti_bin/idcrl.svc /&#34 ;,   RootDomain =" sharepoint.com",政策=" MBI"

这是完整的回复:

  

HTTP / 1.1 401 Unauthorized Cache-Control:private,max-age = 0   Content-Length:0 Content-Type:application / xml; charset = utf-8 Expires:   星期二,07 Jul 2015 07:34:08 GMT Last-Modified:Wed,22 Jul 2015 07:34:08   GMT服务器:Microsoft-IIS / 8.5 X-SharePointHealthScore:0   X-MSDAVEXT_Error:917656;   访问+拒绝。+前+开放+文件+在+这个+位置%2C +你必须+ + +首先浏览+至+ +的网络+现场+和+选择+的+选项+到+登录+自动。   DATASERVICEVERSION:3.0 X-AspNet-Version:4.0.30319 SPRequestGuid:   be6d1c9d-806b-2000-20ed-4d42443d8365 request-id:   be6d1c9d-806b-2000-20ed-4d42443d8365 X-FRAME-OPTIONS:SAMEORIGIN   X-Powered-By:ASP.NET MicrosoftSharePointTeamServices:16.0.0.4121   X-Content-Type-Options:nosniff X-MS-InvokeApp:1; RequireReadOnly   P3P:CP ="所有IND DSP COR ADM CONo CUR CUSo IVAo IVDo PSA PSD TAI TELo   我们的SAMO CNT COM INT NAV ONL PHY PRE PUR UNI" WWW-Authenticate:IDCRL   输入=" BPOSIDCRL",EndPoint =" /sites/Test/_vti_bin/idcrl.svc /",   RootDomain =" sharepoint.com",Policy =" MBI"日期:2015年7月22日星期三   07:34:08 GMT

有人可以告诉我如何在OData控制器中构建这种类型的响应(可能通过自定义动作过滤器)吗?

0 个答案:

没有答案