C# 尝试使用C连接到NetSuite RESTlet时出错500#
我正在尝试在信用卡处理程序和客户的NetSuite帐户之间构建一个连接器,以帮助自动化他们的对账过程。从他们的卡处理器中提取信息不会有任何问题,除非偶尔有错误500。仍然在寻找一种比我现在做的更好的方法 无论如何,当我尝试连接到他们NetSuite帐户中的RESTlet时,问题就出现了。我似乎无法让它正确连接,我得到的只是错误500的响应。问题似乎并不在于RESTlet,因为当使用诸如“sendthttptool”之类的工具来测试它时,我可以很好地与它通信。这是我目前使用的代码:C# 尝试使用C连接到NetSuite RESTlet时出错500#,c#,rest,netsuite,C#,Rest,Netsuite,我正在尝试在信用卡处理程序和客户的NetSuite帐户之间构建一个连接器,以帮助自动化他们的对账过程。从他们的卡处理器中提取信息不会有任何问题,除非偶尔有错误500。仍然在寻找一种比我现在做的更好的方法 无论如何,当我尝试连接到他们NetSuite帐户中的RESTlet时,问题就出现了。我似乎无法让它正确连接,我得到的只是错误500的响应。问题似乎并不在于RESTlet,因为当使用诸如“sendthttptool”之类的工具来测试它时,我可以很好地与它通信。这是我目前使用的代码: JavaScr
JavaScriptSerializer jss = new JavaScriptSerializer();
String content = jss.Serialize(rd);
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(this.nsURL);
req.ContentType = "application/json";
req.ContentLength = content.Length;
req.Method = "POST";
WebHeaderCollection headers = new WebHeaderCollection();
headers.Add("User-Agent-X", "SuiteScript-Call");
headers.Add("Authorization", String.Format("NLAuth nlauth_account={0},nlauth_email={1},nlauth_signature={2},nlauth_role={3}",
this.nsAccount, this.nsEmail, this.nsPassword, this.nsRole));
req.Headers = headers;
using (StreamWriter requestWriter = new StreamWriter(req.GetRequestStream()))
{
requestWriter.Write(content);
}
HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); // error occurs here
Stream stream = resp.GetResponseStream();
using (StreamReader reader = new StreamReader(stream))
{
String response = reader.ReadToEnd();
Console.WriteLine(response);
}
这是记录的错误:
[System.Net.WebException] The remote server returned an error: (500) Internal Server Error.
错误发生在我尝试从HttpWebRequest对象检索响应时。我尝试将数据改为字节数组发送,但在实际将数据写入连接时会导致不同的错误。RESTlet也被设置为在调用时记录它接收到的数据,但是这个错误甚至在RESTlet函数被触发之前就发生了
我花了太多的时间尝试各种不同的“修复”来让它在没有运气的情况下工作
----编辑---
忘了提到我使用的是Visual Studio 2010 Pro和.NET 4。500错误非常模糊。您是否尝试过打开详细错误以更好地了解错误是什么?我不知道如何在控制台应用程序中“打开详细错误”,但在设置断点后,我进一步深入研究了错误,这就是要显示的全部内容<代码>错误类型:System.Net.WebException | |错误消息:远程服务器返回错误:(500)内部服务器错误。| |状态:ProtocolError | |状态代码:InternalServerError | |状态描述:Internal Server Error@MichaelMcCauley感谢您在c|中共享一些restlet代码,您能帮我连接到netsuite吗。如果您能与我分享一些c#中restlet的示例代码,我将不胜感激。500错误是相当模糊的。您是否尝试过打开详细错误以更好地了解错误是什么?我不知道如何在控制台应用程序中“打开详细错误”,但在设置断点后,我进一步深入研究了错误,这就是要显示的全部内容<代码>错误类型:System.Net.WebException | |错误消息:远程服务器返回错误:(500)内部服务器错误。| |状态:ProtocolError | |状态代码:InternalServerError | |状态描述:Internal Server Error@MichaelMcCauley感谢您在c|中共享一些restlet代码,您能帮我连接到netsuite吗。如果您能与我分享一些c语言中restlet的示例代码,我将不胜感激#