Если другой сайт делает POST для моего сайта ASP.NET MVC 2, как я могу его перехватить? Нужно ли что-нибудь делать с маршрутами?
Например, другой сайт делает это:
string url = "https://mvc2-site.com/TestReceive"; // that's my site's controller action
NameValueCollection inputs = new NameValueCollection();
inputs.Add("SessionId", "11111");
System.Net.WebClient Client = new WebClient();
byte[] result = Client.UploadValues(url, inputs);
Как мне получить этот POST на моем сайте? Я пробовал:
public ActionResult TestReceive(FormCollection fc) {} // doesn't get hit
public ActionResult TestReceive(string SessionId) {} // method gets hit but session id is null
public ActionResult TestReceive()
{
var param = ControllerContext.RouteData.Values["parameter"].ToString(); // Values["parameter"] is null
}
Я не контролирую другой сайт, и это должен быть POST (не веб-сервис или что-то еще)
Как еще один поворот, они будут POST около 10 переменных, но некоторые являются необязательными, поэтому они могут не быть в данных POST.