クライアントが serverxmlhttp を使用してハンドラーから情報を要求する環境のために、asp.net を使用して http ハンドル (.ashx) を実装しようとしています。これがこれまでのコードです...
クライアント.ASPX
<%@ Page Language="VB" %>
<%
On Error Resume Next
Dim myserver_url As String = "http://mydomain.com/Server.ashx"
Dim myparameters As String = "one=1&two=2"
Dim xmlhttp As Object
xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP.4.0")
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
xmlhttp.open("POST", myserver_url, False)
xmlhttp.Send(myparameters)
If xmlhttp.Status = 200 Then
Dim myresults As String = ""
myresults = xmlhttp.responsetext
Response.Clear()
Response.Write("<html><body><h1>" & myresults & "</h1></body></html>")
End If
xmlhttp = Nothing
%>
サーバー.ASHX
<%@ WebHandler Language="VB" Class="MyServerClass" %>
Imports System
Imports System.Web
Public Class MyServerClass : Implements IHttpHandler
Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
context.Response.ContentType = "text/plain"
context.Response.Write("hi there")
End Sub
Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End Property
End Class
...私の問題は、クライアント コードの myresults 文字列が常に空白であることです。質問: http-handle は、それを呼び出した xmlhttp オブジェクトの responsetext プロパティをどのように入力する必要がありますか?
補遺: server.ashx も aspx ファイルとして実装しましたが、myresults は空白のままでした。これがそのコードです。
サーバー.ASPX
<%@ Page Language="VB" %>
<%
Response.ContentType = "text/plain"
Response.Write("hi there")
%>
助けてくれてありがとう!平和、ヘンリー・E・テイラー