首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Petrel插件中使用DefaultCredentials

在Petrel插件中使用DefaultCredentials
EN

Stack Overflow用户
提问于 2016-11-16 05:52:31
回答 1查看 116关注 0票数 2

我正在开发一个Petrel插件,它向需要Windows身份验证的IIS服务器发出web请求。为了发送当前登录用户的Windows凭据,我设置了request.UseDefaultCredentials = true。下面是发出请求的代码。

代码语言:javascript
复制
public static void MakeWebRequest()
{
    var request = (HttpWebRequest)WebRequest.Create("some web address");
    request.ContentType = "application/json; charset=utf-8";
    request.Method = "POST";
    request.UseDefaultCredentials = true;
    using (var streamWriter = new StreamWriter(request.GetRequestStream()))
    {
        streamWriter.Write("some request data");
    }

    var response = request.GetResponse();

    using (var streamReader = new StreamReader(response.GetResponseStream()))
    {
        var responseText = streamReader.ReadToEnd();
    }
}

从简单的控制台应用程序运行此代码时,登录用户的Windows凭据将成功添加到web请求中,并返回响应。

但是,当在Petrel插件中运行相同的代码时,不会添加凭据。这会导致IIS拒绝该请求,并显示401未授权错误。

为什么这段代码不能在插件中运行?有没有办法将当前用户的Windows凭据附加到web请求?我不想在插件中提示用户输入凭据。

EN

回答 1

Stack Overflow用户

发布于 2016-11-16 22:53:34

我不知道为什么,但很明显Petrel过滤掉了你的证书。不过,我认为你可以拿到证书。谷歌搜索HttpWebRequest CreateCredentials。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40620366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档