Я пытаюсь создать вызов WEB API на той же машине на другом порту. Он отлично работает и отправляет обратно строку и удаляет точку останова .NET, но параметр никогда не передается. (Это значение равно null). Есть ли что-то, что мне не хватает в классическом ASP-коде для передачи этой строки? (DataToSend)Как отправить HTTP POST из классического ASP с параметром в WEB API?
Мой код вызова:
<%
Response.Buffer = True
Dim xml
' Set xml = Server.CreateObject("Microsoft.XMLHTTP")
Set xml = server.Createobject("MSXML2.XMLHTTP")
DataToSend="<?xml version=""1.0"" encoding=""UTF-8""?><codes sku=""123123"" num-codes=""234234"" />"
xml.Open "POST", _
"http://localhost:1303/api/RegistrationCode", _
False
xml.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xml.setRequestHeader "X-VitalSource-API-Key", "xxx"
xml.Send DataToSend
'Display the HTML both as HTML and as text
Response.Write "<h1>The HTML text</h1><xmp>"
Response.Write xml.responseText
Response.Write "</xmp><p><hr><p><h1>The HTML Output</h1>"
Response.Write xml.responseText
Set xml = Nothing
%>
WEB код API:
public class RegistrationCodeController : ApiController
{
string testXmlString = "<SomeValue>6</SomeValue>";
public string Post([FromBody]string value)
{
return testXmlString;
}
}
Спасибо Пит. Помог мне массово здесь (проклинай старый код ASP)! –