문제

이 두 속성의 차이점은 무엇입니까?

상황에 맞추기 위해, 나는 우리의 responseuri! = requesturi 인 경우 리디렉션이 발생하는지 결정하고 있습니다.

URL에 관계없이 리디렉션이 발생합니다 http://adage.com/adages/article?article_id=140560 다른 응답을 제공합니다 (http://adage.com/adages/post.php) 주소보다 (http://adage.com/adages/post?article_id=140560).

ResponseUri가 컨텐츠로 위치 헤더를 가져 와서 주소가 올바른 위치를 유지하는 동안 사용하는 것으로 보입니다.

Requesturi를 httpwebrequest.address와 비교하여 리디렉션을 확인하는 것이 맞습니까?

도움이 되었습니까?

해결책

예, 비교 request.RequestUri 그리고 request.Address 갈 길입니다. 적어도 단핵증 response.ResponseUri 와 같다 request.Address.

다른 팁

나는 이것이 오래된 질문이라는 것을 알고 있지만,이 주제를 연구하는 동안 그것을 발견했고 그것이 실제로 올바르게 대답하지 않았다는 것을 알았습니다.

하는 동안 HttpWebRequest.Address 그리고 HttpWebResponse.ResponseUri ~해야 한다 항상 동일합니다. 차이점은 다음과 같습니다.

  • HttpWebResponse.Address 페이지의 URI를 실제로 응답합니다
  • HttpWebResponse.ResponseUri 값을 반환합니다 Content-Location 헤더 (존재하는 경우). 문서는 Content-Location 헤더가 존재하지 않으며 다음과 같은 값을 사용한다고 가정합니다. Address.

HTTP 헤더를 위조 할 수 있으므로 Microsoft는 사용하는 것이 좋습니다. Address 대신에 ResponseUri 보안상의 이유로.

http://msdn.microsoft.com/en-us/library/system.net.httpwebresponse.responseuri.aspx

요청 설정에 대해 생각 했습니까?

URI 비교도 잘 작동해야하지만 모든 Edge Case가 확실하지 않습니다.

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