2011-03-27 105 views
1

我想從另一個不是我的網站做表單發帖,但是我不能給出錯誤。Form post asp classic xmlhttp

有後安裝這樣的網站上:

<a href="javascript:document.result.submit()" class="lnk-more">Veja o resultado da enquete anterior »</a> 

<br /><br /> 

<form name="result" action="http://enquete.terra.com.br/enquete.cgi" method="post"> 
    <input type="hidden" name="id_enquete" value="144143"> 
    <input type="hidden" name="opcao" value="0"> 
</form> 

而且我騎在ASP腳本,使該帖子爲:

<% 
Dim objHttp 
Dim str 

    str = "id_enquete=144143&opcao=0" 

    Set objHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 
    objHttp.Open "POST", "http://enquete.terra.com.br/enquete.cgi", false 
    objHttp.setRequestHeader "Host", "http://enquete.terra.com.br" 
    objHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-1" 
    objHttp.setRequestHeader "Content-Length", Len(str) 
    objHttp.Send str 

    Response.Write(objHttp.ResponseText) 

Set objHttp = nothing 
%> 

但不是這方面的工作,確實誰知道如何或知道我在哪裏 錯?

感謝

+0

測試返回此錯誤信息:「內部服務器錯誤:: 遇到一個內部錯誤或配置錯誤的服務器,並無法完成您的請求:: 請與服務器管理員聯繫,[email protected]並通知他們錯誤發生的時間以及您可能已經造成的任何可能導致錯誤的信息。:: 有關此錯誤的更多信息可能在服務器錯誤日誌中可用。 – Dee 2011-03-28 04:50:05

回答

0

不能使用AJAX由於same origin policy使跨域請求。如果其他站點支持JSONP,則可以使用腳本請求來訪問站點並從中獲取數據,當然,您的參數需要位於URL中才能使用。

<script type="text/javascript"> 
    function resultCallback(data) { 
     // do something with the returned JSON data 
    } 
</script> 
<script type="text/javascript" src="http://enquete.terra.com.br/enquete.cgi?id_enquete=144143&opacao=0&callback=resultCallback"> 
</script> 
0

代碼看起來是真的; 「內部服務器錯誤」的原因是因爲您的IIS設置錯誤不在調試模式。

您應該將您的IIS設置更改爲「向瀏覽器發送錯誤消息」,然後您可以在瀏覽器上看到實際的錯誤消息;這可能是由Msxml2.ServerXMLHTTP對象的版本引起的。