我在客户端使用Angular2,在后端使用Node。我试图保持https连接打开,直到它在4小时内超时。
在后端我试过,调用它,但默认情况下仍然超时2分钟
request.timeout(1000 * 60 * 60 * 4, function(){})
因为我使用Angular2 http模块。我尝试在http请求中使用超时方法,如下所示,此超时默认为2分钟:
return this.http.get(this.URL, {search : params, withCredentials: true})
.map(res => res.json())
.timeout(1000 * 60 * 60 * 4)
.catch(this.handleError);
将https请求连接从默认2分钟增加到4小时的任何其他建议
答案 0 :(得分:0)
以下是一些建议:
等待4小时的响应并不是一个好的设计。尝试更改后端以获得更快的响应
将 requestTimeout 添加到项目的web.config文件中为我解决了问题
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
</handlers>
<aspNetCore requestTimeout="00:10:00" processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>
</system.webServer>