c# - 将 XML 发布到 MVC 控制器 C#
问题描述
我正在尝试将来自 www.domain1.com 的 XML 发布到 www.domain2.com 中的控制器。
这是我的代码:
www.domain2.com
[HttpPost]
public ActionResult FetchProductsXML()
{
Response.ContentType = "text/xml";
StreamReader reader = new StreamReader(Request.InputStream);
String xmlData = reader.ReadToEnd();
var products = _productService.SearchProducts(showHidden: false);
var xml = _exportManager.ExportProductsToXml(products);
return this.Content(xml, "text/xml");
}
然后在 www.domain1.com 我发布如下..
private string getProductLIstXML()
{
ASCIIEncoding encoding = new ASCIIEncoding();
string SampleXml = "<testXml>test</testXml>";
try
{
byte[] data = encoding.GetBytes(SampleXml);
string url = "http://www.domain2.com/products-xml";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
byte[] bytes;
bytes = System.Text.Encoding.ASCII.GetBytes(SampleXml);
request.ContentType = "text/xml; encoding='utf-8'";
request.ContentLength = bytes.Length;
request.Method = "POST";
Stream requestStream = request.GetRequestStream();
requestStream.Write(bytes, 0, bytes.Length);
requestStream.Close();
HttpWebResponse response;
response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{
Stream responseStream = response.GetResponseStream();
string responseStr = new StreamReader(responseStream).ReadToEnd();
return responseStr;
}
return null;
}
catch (WebException webex)
{
return webex.ToString();
}
}
我在 RouteProvider 类中的自定义路由
routes.MapLocalizedRoute("FetchProductsXML",
"products-xml",
new { controller = "Product", action = "FetchProductsXML" },
new[] { "Nop.Web.Controllers" });
我得到的错误是
System.Net.WebException: The remote server returned an error: (404) Not Found.
at System.Net.HttpWebRequest.GetResponse()
我遵循了以下 SOQ 中的示例
解决方案
经过一个漫长的夜晚,我意识到我在错误的课程中使用了该方法:(
现在都修好了。
推荐阅读
- javascript - 单击包含按钮时旋转图标
- sap-cloud-sdk - 在嵌入式 webapp 中执行前端测试
- kubernetes - 为什么在 Kubernetes 中找不到服务发现?
- angular - 使用 MapsAPILoader 时无法解析参数 - Angular
- laravel - 如何在 Laravel 中进行多个子查询
- python - “AsyncIOMotorLatentCommandCursor”对象不可下标
- javascript - 如何将样式传递给子组件并将其用作 Vue 中的作用域样式?
- function - 自行更新的 Flutter 模型
- ruby - Inspec - 控制源代码错误 - 503“服务不可用”
- c++ - 我在 C++ 中的输出有问题,最后两次打印不起作用