2011-07-30 3 views
0

http get 또는 post 메서드를 Windows 응용 프로그램에 전달하는 방법은 무엇입니까? 웹 서버에 데이터베이스 서버를 쿼리 한 다음 웹 서버에 응답하는 get 메서드를 보내야합니다.Windows 양식 응용 프로그램에서 http 웹 요청을 수신하는 방법

MySQL 데이터베이스를 검색하는 Windows 기반 검색 엔진을 개발하고 있습니다. SMS 게이트웨이 소프트웨어에서 HTTP get 요청으로 키워드를 수신하고 동일한 HTTP 요청을 사용하여 게이트웨이 소프트웨어에 응답해야합니다. 이것은 나의 코드입니다. 데이터베이스를 올바르게 검색하고 있지만 응용 프로그램에서 get 메소드를 수신하는 방법을 모르지만 SMS 게이트웨이로 메시지를 보냅니다. http://msdn.microsoft.com/en-us/library/system.net.httplistener.aspx

를 참조 응용 프로그램이 관리자 권한으로 실행되지 않을 경우 당신은 당신이있는 URL을 등록해야합니다 - 당신이 당신의 윈폼 응용 프로그램에서 웹 서버를 호스트 할 같은

Private Sub bSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bSend.Click 
    Dim request As HttpWebRequest 
    Dim response As HttpWebResponse = Nothing 
    Dim url As String 
    Dim username As String = "admin" 
    Dim password As String = "abc123" 
    Dim host As String = "http://127.0.0.1:9501" 
    Dim originator As String = "0724116972" 

    Try 

     url = host + "/api?action=sendmessage&" _ 
       & "username=" & HttpUtility.UrlEncode(username) _ 
       & "&password=" + HttpUtility.UrlEncode(password) _ 
       & "&recipient=" + HttpUtility.UrlEncode(tbReceiver.Text) _ 
       & "&messagetype=SMS:TEXT" _ 
       & "&messagedata=" + HttpUtility.UrlEncode(tbMessage.Text) _ 
       & "&originator=" + HttpUtility.UrlEncode(originator) _ 
       & "&serviceprovider=" _ 
       & "&responseformat=html" 


     request = DirectCast(WebRequest.Create(url), HttpWebRequest) 

     response = DirectCast(request.GetResponse(), HttpWebResponse) 

     MessageBox.Show("Response: " & response.StatusDescription) 

    Catch ex As Exception 
     MessageBox.Show("Error. Server Not running") 
     Me.Close() 
    End Try 
    End Sub 
End Class 
+0

정확히 무엇을하려고합니까? 예, 웹 요청에 응답하는 애플리케이션을 작성할 수 있습니다. 본질적으로 웹 서버를 작성하게 될 것입니다. 그런 다음 요청을 발행 할 다른 웹 서버가 있습니까? 웹 서버는 일반적으로 요청에 응답하고 요청하지 않습니다. 당신이 성취하고자하는 것이나 그 이유가 무엇인지는 분명치 않습니다. – David

+0

http://stackoverflow.com/questions/2615335/post-to-webpage-in-vb-net-win-forms-desktop-not-asp-net –

+0

아래 예제를 확인하십시오. – Staypa

답변

1

당신은 HttpListener을 사용할 수 있습니다 ... 소리 ~ netsh와 함께 listerning 비록

관련 문제