C# 使用Windows身份验证(NTLM身份验证)热加载代理IIS Express的Web包开发服务器
我使用Windows身份验证创建了一个新的C# 使用Windows身份验证(NTLM身份验证)热加载代理IIS Express的Web包开发服务器,c#,asp.net,reactjs,iis,webpack-dev-server,C#,Asp.net,Reactjs,Iis,Webpack Dev Server,我使用Windows身份验证创建了一个新的ASP.NET Web应用程序->Web API 2项目。这在IIS Express中运行良好,但为了使我的React前端获得热重新加载,我已尝试使用webpack dev server,并让它代理我的IIS Express。我以前在cookie身份验证和令牌(承载)身份验证中都使用过这种方法,但在Windows身份验证(NTLM身份验证)中它不起作用 查看服务器的响应,我得到了预期的401unauthorized(401.2)响应,标题为www-aut
ASP.NET Web应用程序->Web API 2项目。这在IIS Express中运行良好,但为了使我的React前端获得热重新加载,我已尝试使用webpack dev server
,并让它代理我的IIS Express。我以前在cookie身份验证和令牌(承载)身份验证中都使用过这种方法,但在Windows身份验证(NTLM身份验证)中它不起作用
查看服务器的响应,我得到了预期的401unauthorized(401.2)
响应,标题为www-authenticate:Negotiate,NTLM
,与预期一致,但我认为客户端不会使用Authorization:NTLM
重新发送请求
我使用过的浏览器(Chrome、Firefox和IE)也不会正常提示我输入正确的凭据
我在webpack.config.js中的设置如下所示:
var proxy = 'localhost:57263';
devServer: {
proxy: {
'*': {
target: 'http://' + proxy,
changeOrigin: true,
},
port: 8080,
host: '0.0.0.0',
hot: true,
},
}
在查看了webpack dev server Proxy
的文档后,我发现它们使用http代理中间件
这让我找到了这条线索并回答:
最终解决方案:
运行:
工作代码:
var proxy = 'localhost:57263';
devServer: {
proxy: {
'*': {
target: 'http://' + proxy,
changeOrigin: true,
agent: new agent({
maxSockets: 100,
keepAlive: true,
maxFreeSockets: 10,
keepAliveMsecs: 100000,
timeout: 6000000,
keepAliveTimeout: 90000 // free socket keepalive for 90 seconds
}),
onProxyRes: (proxyRes) => {
var key = 'www-authenticate';
proxyRes.headers[key] = proxyRes.headers[key] && proxyRes.headers[key].split(',');
},
},
port: 8080,
host: '0.0.0.0',
hot: true,
},
}
在查看了webpack dev server Proxy
的文档后,我发现它们使用http代理中间件
这让我找到了这条线索并回答:
最终解决方案:
运行:
工作代码:
var proxy = 'localhost:57263';
devServer: {
proxy: {
'*': {
target: 'http://' + proxy,
changeOrigin: true,
agent: new agent({
maxSockets: 100,
keepAlive: true,
maxFreeSockets: 10,
keepAliveMsecs: 100000,
timeout: 6000000,
keepAliveTimeout: 90000 // free socket keepalive for 90 seconds
}),
onProxyRes: (proxyRes) => {
var key = 'www-authenticate';
proxyRes.headers[key] = proxyRes.headers[key] && proxyRes.headers[key].split(',');
},
},
port: 8080,
host: '0.0.0.0',
hot: true,
},
}
嗨,Ogglas,我如何让IISExpress和webpackdevserver一起工作。这里是我面临的问题。非常感谢Ogglas,我如何让IISExpress和webpackdevserver一起工作。这里是我面临的问题,任何帮助都是非常感谢的