Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 尝试使用C连接到NetSuite RESTlet时出错500#_C#_Rest_Netsuite - Fatal编程技术网

C# 尝试使用C连接到NetSuite RESTlet时出错500#

C# 尝试使用C连接到NetSuite RESTlet时出错500#,c#,rest,netsuite,C#,Rest,Netsuite,我正在尝试在信用卡处理程序和客户的NetSuite帐户之间构建一个连接器,以帮助自动化他们的对账过程。从他们的卡处理器中提取信息不会有任何问题,除非偶尔有错误500。仍然在寻找一种比我现在做的更好的方法 无论如何,当我尝试连接到他们NetSuite帐户中的RESTlet时,问题就出现了。我似乎无法让它正确连接,我得到的只是错误500的响应。问题似乎并不在于RESTlet,因为当使用诸如“sendthttptool”之类的工具来测试它时,我可以很好地与它通信。这是我目前使用的代码: JavaScr

我正在尝试在信用卡处理程序和客户的NetSuite帐户之间构建一个连接器,以帮助自动化他们的对账过程。从他们的卡处理器中提取信息不会有任何问题,除非偶尔有错误500。仍然在寻找一种比我现在做的更好的方法

无论如何,当我尝试连接到他们NetSuite帐户中的RESTlet时,问题就出现了。我似乎无法让它正确连接,我得到的只是错误500的响应。问题似乎并不在于RESTlet,因为当使用诸如“sendthttptool”之类的工具来测试它时,我可以很好地与它通信。这是我目前使用的代码:

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的示例代码,我将不胜感激#