2017-10-11 21 views
1

古典的なhttprequestを使って、reqeustを呼び出しているaspxからデータを取得する方法を見つけるのが難しいです。古典的なaspページhttprequest aspxページ?

古典コード:

HostURL = "https://URL" 
    NetURL = "middle.aspx?HostURL=" & HostUR 

    Dim oXMLHTTP 
    Dim strStatusTest 

    Set oXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0") 

    oXMLHTTP.Open "POST", NetURL, False 
    oXMLHTTP.Send 
    strStatusText = oXMLHTTP.responseText 

netURLのASPXコード

private void Page_Load(object sender, System.EventArgs e){ 
    String host = getParam(); 
     HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(host); 
     HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse(); 

    String cc; 
     using (Stream stream = response.GetResponseStream()) 
     { 
      StreamReader reader = new StreamReader(stream, Encoding.UTF8); 
      cc = reader.ReadToEnd(); 
     }  
    Response.Write(cc); 
} 

私は古典からaspxページを呼び出すときに何イムが何しようとすると、負荷のASPXは、Iキーを取得しています持っているASPページが必要です。

aspxコードは正常に動作し、必要なキーを取得します。

追加情報:TLS 1.0を無効にし、マネージャはレジストリ修正を行いたくありません。私も非常にジュニアなプログラマーですので、これはうまくいかないかもしれません。わかりません。

ご協力いただきありがとうございます。

+2

の最新バージョンを呼び出しますか?エラーが報告されますか? – JohnRC

+0

古典的なコード行2に構文エラーがあり、NetURLが 'https:// URL'に設定されていると疑わしいです。また、データを送信しないので、POSTではなくGETを使用することをお勧めします。私はよく古典的なASPでXMLHTTPを使用して、それは正常に動作します。 – JohnRC

答えて

1

JohnRCさんのコメントが指摘するように、あなたのコード

を持ついくつかの問題があります - https://URLは疑わしいです。私はあなたがこのフォーラムに表示したくない実際のURLにこれを代用したと仮定します。これがあれば

NetURLは、あなたが2行目HostURLの終わりオフ「L」を残してきた提供したコードでは、

NetURL = "http://www.yourdomain.com/middle.aspx?HostURL=" & HostURL 

またすなわち、絶対URLにする必要がありますあなたの実際のコードでは、明らかに変数はあなたのaspxページに渡されません。

は最後に、それは誤りではないのですが、私はむしろ、3.0よりもMSXML2.ServerXMLHTTP.6.0を使用することをお勧め - それは実際の問題とは何MSXML

関連する問題