首页 > 解决方案 > Microsoft Graph 给出错误:需要身份验证质询

问题描述

    [HttpPost]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> UploadExcel(HttpPostedFileBase upload)
    {
        //Check File code here//


        DriveItem item = null;
        string Secret1 = "secret";
        string Client1 = "clientid";
        string Tenant1 = "tenantid";
        IConfidentialClientApplication confidentialClientApplication = ConfidentialClientApplicationBuilder
        .Create(Client1)
        .WithAuthority(AzureCloudInstance.AzurePublic, Tenant1)
        .WithRedirectUri("uri")
        .WithClientSecret(Secret1)            
        .Build();

        AuthorizationCodeProvider authProvider1 = new AuthorizationCodeProvider(confidentialClientApplication);
        GraphServiceClient graphClient = new GraphServiceClient(authProvider1);            
        using (Stream file1 = upload.InputStream)
        {
            try
            {
                item = await graphClient.Me.Drive.Items["id_of_a_file"]
                .Content
                .Request()
                .PutAsync<DriveItem>(file1);
            }
            catch (Exception ex)
            {
                //Handle Exception
            }
        }
        if (item == null)
        {
            //Tell user
        }
        return RedirectToAction("ActionName");
    }

此外,无论我做什么,重定向 URI 始终为空。 我在其他地方搜索过,但找不到解决方案。这是一个 Web 应用程序。用户登录由我们处理。用户将文件上传到公司的 OneDrive 帐户。授予所有必要的权限和管理员同意。仍然没有解决错误。

标签: sdkmicrosoft-graph-api

解决方案


推荐阅读