我在C#中有一个API,在Visual Basic中有另一个。我需要将JSON格式的一些信息从C#中的API发送到Visual Basic中的API,希望使用POST动词。情况的背景是这样的。移动应用程序在C#中向API发送信息,API将数据保存在服务器中的数据库中,如果信息正确,则C#中的API必须将数据发送到Visual Basic API并将其保存在其他服务器中。有人知道将数据从C#发送到Visual Basic吗?感谢。
答案 0 :(得分:2)
一个API在C#中而另一个在VB中并不重要。只要您发送的json有效(尝试验证您在jsonlint.com上发送的json)并且可以映射到API接受的对象,一切都应该没问题。 似乎端点api不接受请求。
答案 1 :(得分:0)
这是我的C#代码
toSignalProducer()
这是我在Visual Basic中的功能
try
{
var request = (HttpWebRequest)WebRequest.Create(URL);
request.ContentType = "application/json";
request.Method = "POST";
using (var streamWriter = new StreamWriter(request.GetRequestStream()))
{
string json = new JavaScriptSerializer().Serialize(new
{
var1 = "example1",
var2 = "example2"
});
streamWriter.Write(json);
}
var response = (HttpWebResponse)request.GetResponse();
using (var streamReader = new StreamReader(response.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
return Request.CreateResponse(HttpStatusCode.OK, new { Respuesta = result }, "application/json");
}
}
catch(Exception e)
{
return Request.CreateResponse(HttpStatusCode.InternalServerError, new { Respuesta = e.ToString() }, "application/json");
}
}
多数民众赞成。并把这个错误扔给我 { “Respuesta”:“System.Net.WebException:远程服务器返回错误:(404)Not Found。\ r \ n在System.Net.HttpWebRequest.GetResponse()\ r \ n在Servicios.Controllers.SAPEnviarFacturasController.SAPEnviarFacturas ()在C:\ TFS \ Servicios \ Controllers \ SAPEnviarFacturasController.cs:第44行“ }