C# 在Azure工作者角色http请求中获取http 500
我有一个azure web服务,它运行1个工作者角色和1个web角色,这些角色设置为在azure专用网络中 worker角色对我们的数据库执行一些同步工作,该数据库从许多API和服务器下载报告文件,然后将它们同步到我们的数据库, 出于某种原因,1(共10个)API http请求在云中返回http错误500,但当我在我的机器上调试它时,它工作正常,而且我在EC2(AWS)aspx网站上运行的代码与在AWS上运行的数据库相同,工作正常 以下是执行该任务(失败的任务)的代码: 以下是RequestState类:C# 在Azure工作者角色http请求中获取http 500,c#,.net,azure,httprequest,azure-worker-roles,C#,.net,Azure,Httprequest,Azure Worker Roles,我有一个azure web服务,它运行1个工作者角色和1个web角色,这些角色设置为在azure专用网络中 worker角色对我们的数据库执行一些同步工作,该数据库从许多API和服务器下载报告文件,然后将它们同步到我们的数据库, 出于某种原因,1(共10个)API http请求在云中返回http错误500,但当我在我的机器上调试它时,它工作正常,而且我在EC2(AWS)aspx网站上运行的代码与在AWS上运行的数据库相同,工作正常 以下是执行该任务(失败的任务)的代码: 以下是RequestSt
public class RequestState
{
// This class stores the State of the request.
const int BUFFER_SIZE = 1024;
public StringBuilder requestData;
public byte[] BufferRead;
public HttpWebRequest request;
public HttpWebResponse response;
public Stream streamResponse;
public DateTime from;
public DateTime to;
public string prefix;
public string ext;
public RequestState()
{
BufferRead = new byte[BUFFER_SIZE];
requestData = new StringBuilder("");
request = null;
streamResponse = null;
}
}
这是请求调用的Url:
this._cj_url = "https://commission-detail.api.cj.com/v3/commissions?date-type=posting&start-date={0}&end-date={1}";
编辑:
由于某种原因,在我对服务实例启用远程控制后,它得到了修复。
我真的很想知道为什么我会有这个问题…一个想法是,当你在云中运行代码时,你正在他们的服务器上运行,这意味着你的约会可能都会出问题。我以前见过你假设的
日期时间。现在(或你正在做的任何事情)是你的时间,但实际上是你在云中运行的虚拟机的服务器时间。可能是日期问题的原因是,我看到您正在将日期参数传递到URL,可能是在云中运行时格式错误?引发了什么错误/异常?1)除了代码500之外,响应中没有其他详细信息吗?2) 如果两个角色处于同一部署中,则不需要网络,可以设置内部访问点。3) 您是否知道,对于每个角色只有一个实例的情况,您的计算机没有保证正常运行时间?1。这就是错误-远程服务器返回错误:(500)内部服务器错误。2.角色需要与该网络上的另一个vm通信,这就是为什么我将它们设置在该网络中。3.是的,我知道,他们正在做一项非常简单且规模不大的工作。我考虑过这一点,但该请求的日期范围不会错,不知道服务器时间是多少…您能否将确切的http请求详细信息记录到最后一个详细信息,并尝试在本地复制?
this._cj_url = "https://commission-detail.api.cj.com/v3/commissions?date-type=posting&start-date={0}&end-date={1}";