Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > ASP > Вызов web-сервиса из asp


Автор: alkos 24.9.2009, 11:09
Добрый день!
Имеем давно отработанный веб-сервис с методом IPMCreateNewCall(AId, AUserId, ASecureId). Нужнo вызвать его из asp-страницы. Код выглядит вот так:

Код

<html>
<head>
<title>Creating a call</title>
</head>
<body>
<%
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
Dim xmlhttp
Dim DataToSend
DataToSend="AId="&Request.Form("AId")&"&AUserId="&Request.Form("AUserId")&"&ASecureId="&Request.Form("ASecureId")
rwb DataToSend
Dim postUrl
'If Request.Form.Item("Operation")="Sum" Then
postUrl = "https://de-chs-dev.ww005.siemens.net/New/restricted/ProcessWebServ/ProcessWebService.asmx/IPMCreateNewCall"
'else
'postUrl = "http://localhost/Test_ASP_Service1/Service1.asmx/Subtract" 
'end if 
Set xmlhttp = server.Createobject("MSXML2.XMLHTTP")
xmlhttp.Open "POST",postUrl,false
xmlhttp.setRequestHeader "Content-Type","text/xml; charset=utf-8"
xmlhttp.send DataToSend
Response.Write DataToSend & "<br>"
Response.Write(xmlhttp.responseText)
Else
Response.Write "Loading for the first Time" 
End If
%>
<FORM method=POST name="form1" ID="Form1"> 
Enter the Values to perform Operation<BR>

          AId: <INPUT type="text" name="AId" ID="Text1" value="-1">
<BR>  AUserId: <INPUT type="text" name="AUserId" ID="Text2" value="1258">
<BR>ASecureId: <INPUT type="text" name="ASecureId" ID="Text3" value="SecureId-String">
<BR><BR>
<INPUT type="submit" value="GO" name="submit1" ID="Submit1">
</form>
</body>
</html>


Но после нажатия на submit браузер показывает "невозможно отбразить страницу". Не подскажете, в чем ошибка. Несколько часов уже на эти 30 строк убил - все бестолку.

Заранее премного благодарен! smile

Автор: alkos 25.9.2009, 17:37
Проблема решилась: т.к. веб-сервис на удаленном сервере, то нужно вместо

Код

Set xmlhttp = server.Createobject("MSXML2.XMLHTTP")

использовать
Код

Set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP.3.0")

Правда, возникла другая проблема: IIS возвращает ошибку 401.2, и употребление 
Код

xmlhttp.Open "POST",postUrl,false, strUserName, strPassword

ничего не дает :(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)