我创建了一个SharePoint提供商托管应用程序,当我发布并添加到网站时它运行正常。我创建了一个CName并使用appregnew页面注册,部署了云服务项目,安装并添加了应用程序。我在我有身份验证的页面上收到相同的错误[SharePointContextFilter]。没有身份验证的页面[SharePointContextFilter]工作正常。
以下是详细错误:
发生错误。令牌请求失败。 Inner:System.Net.WebException:远程服务器返回错误:(400)错误请求。 at System.Net.HttpWebRequest.GetResponse()at Microsoft.IdentityModel.S2S.Protocols.OAuth2.OAuth2WebRequest.GetResponse()at Microsoft.IdentityModel.S2S.Protocols.OAuth2.OAuth2S2SClient.Issue(String securityTokenServiceUrl,OAuth2AccessTokenRequest oauth2Request)Stacktace:at PasswordResetAppWeb.SharePointAcsContext.RenewAccessTokenIfNeeded(元组{{1}上的PasswordResetAppWeb.TokenHelper.GetAccessToken(String refreshToken,String targetPrincipalName,String targetHost,String targetRealm)中的Microsoft.IdentityModel.S2S.Protocols.OAuth2.OAuth2S2SClient.Issue(String securityTokenServiceUrl,OAuth2AccessTokenRequest oauth2Request) PasswordResetAppWeb.Share控件上的PasswordResetAppWeb.SharePointAcsContext.GetAccessTokenString(元组2& accessToken, Func
1 tokenRenewalHandler)中的1个tokenRenewalHandler)。密码存储:Microsoft.IdentityModel.Extensions
知道我做错了吗?
我使用Cname URL来使用appregnew.aspx注册应用程序,并在打包应用程序时也使用了Cname URL。我在这里做错了什么?
任何建议都会很棒..提前致谢!!
答案 0 :(得分:2)
我明白了。我没有将客户端密码正确复制到web.config。它有一个空间,导致了这个问题。
因此,向云服务中托管的sharepoint应用添加别名是正确的步骤:
使用新的CName注册应用程序,在webconfig中更改clientID,Client Secret并部署,使用Cname和clientID打包应用程序并安装并添加应用程序。 确保正确复制您的客户端ID和客户端密码。