문제

Classic ASP (.NET 아님)에서 Post Data를 사용하여 HTTP 요청을 어떻게 만들려고합니까?

도움이 되었습니까?

해결책

다음과 같은 것을 시도 할 수 있습니다.

Set ServerXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
ServerXmlHttp.open "POST", "http://www.example.com/page.asp"
ServerXmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
ServerXmlHttp.setRequestHeader "Content-Length", Len(PostData)
ServerXmlHttp.send PostData

If ServerXmlHttp.status = 200 Then
    TextResponse = ServerXmlHttp.responseText
    XMLResponse = ServerXmlHttp.responseXML
    StreamResponse = ServerXmlHttp.responseStream
Else
    ' Handle missing response or other errors here
End If

Set ServerXmlHttp = Nothing

PostData가 게시하려는 데이터입니다 (예 : 이름-값 쌍, XML 문서 등).

설치 한 내용과 일치하려면 올바른 버전의 msxml2.serverxmlhttp를 설정해야합니다.

열린 방법은 5 개의 인수를 취하며, 그 중 첫 번째는 다음과 같이 필요합니다.

ServerXmlHttp.open Method, URL, Async, User, Password
  • 방법 : "get"또는 "post"
  • URL : 게시하려는 URL
  • 비동기 : 기본값은 False입니다 (호출은 즉시 반환되지 않음) - 비동기 호출을 위해 True로 설정
  • 사용자 : 인증에 필요한 사용자 이름입니다
  • 비밀번호 : 인증에 필요한 비밀번호

통화가 반환되면 상태 속성은 HTTP 상태를 유지합니다. 200의 값은 OK를 의미합니다 -404는 찾을 수 없으며 500은 서버 오류를 의미합니다. (참조 http://en.wikipedia.org/wiki/list_of_http_status_codes 다른 값의 경우.)

응답을 텍스트 (responsext property), xml (responsexml property) 또는 스트림 (ResponseStream 속성)으로 얻을 수 있습니다.

다른 팁

기존 XMLHTTP 서버 객체 중 하나를 직접 사용해야합니다. 그렇지 않으면 낮은 레벨을 추상화하여 생명을 조금 더 쉽게 할 수있는 라이브러리를 사용할 수 있습니다.

확인하다 Ajaxed 구현 URL을 가져 오는 것

단점 : 라이브러리를 작동 시키려면 라이브러리를 구성해야합니다. 이것이 프로젝트에 필요한지 확실하지 않습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top