2010-06-01 114 views
0

我正在cakephp上工作。 我已經開發了在那裏我已經在所有的Ajax後使用本地主機並獲得當我把本地主機這件事只能應用..當ip給出而不是本地主機時,Ajax會拋出語法錯誤

    var ht = $.ajax({ 
          type: "GET", 
          url: "http://localhost/FormBuilder/index.php/forms/getInvitees/<?php echo $emailid;?>", 
          async: false 
        }).responseText; 


        var myObject = eval('(' + ht + ')'); 

。但是,當我改變我的葉像 http://111.11.11.11/FormBuilder/index.php/forms/getInvitees/」, 那麼我在該行得到一個語法錯誤()
VAR myObject的=的eval( '(' + HT + ')');

爲什麼發生??請給解決了這一寶貴的建議..

用於HT的響應將是 {「被邀請者」:[{「被邀請者」:「23」}]} 我從中將產生由

鏈接
     var data = myObject; 
       $.map(data.invitees, function(i){ 
           var id=i.invitee; 

         $("<a href=<?php echo $link?>/"+id+"/Invitee> <?php echo $link?>/"+id+"/Invitee</a>").appendTo("#"+inc); 
         inc++;         

       return i.invitee;}); 

謝謝

+0

這種情況下「ht」的值是多少? – ob1 2010-06-01 06:23:23

+0

ht的響應將是{「invitees」:[{「invitee」:「23」}]} – useranon 2010-06-01 06:25:31

+0

從中我將生成鏈接,如 var data = myObject; \t \t $ .MAP(data.invitees,功能(I){ VAR ID = i.invitee; $( 「/"+id+"/Invitee>/"+id+"/Invitee 」).appendTo(「 #」 + INC); INC++; 返回i.invitee; }); – useranon 2010-06-01 06:26:33

回答

0

你知道在幾乎任何情況下,localhost轉換爲127.0.0.1。您是否確定要將您的網絡服務器正確綁定到111.11.11.11並提供相同的DocumentRoot?

看起來像當你通過IP調用服務器時沒有收到JSON對象。

編輯

我不知道你是否正在使用VirtualHosts設置你的開發環境,但因爲你是利用本地主機的我將與Apache的標準的httpd.conf去。

httpd.conf文件中搜索以Listen ...開頭的行。確保具有Listen指令的唯一行看起來像Listen *:80,以允許Apache將自己綁定到計算機上可用的任何IP。

然後,將靠近文件的末尾以下內容:

<VirtualHost *> 
    ServerName myfoo.com 
    ServerAdmin [email protected] 
    DocumentRoot "C:/..path to your working directory/"   
</VirtualHost> 

現在你已經成功實施,供應localhost和任何其他IP你的機器是從同一的DocumentRoot(目錄分配給虛擬主機您HTML/PHP /任何文件駐留)。

祝你好運。

+0

請與我分享如何在此IP的文檔根中提及 – useranon 2010-06-01 07:08:09

+0

您使用的是什麼類型的Web服務器? – aefxx 2010-06-01 07:20:31

+0

我正在使用Apache – useranon 2010-06-01 07:28:33

0

當然在這種情況下使用本地主機更通用?

在我的CakePHP的應用程序,我使用:

'http://localhost/cakeapp/nodeDescriptors/ajaxSetStatus' 

'/cakeapp/nodes/updateTreeNodes' 

的AJAX調用。 請記住,如果您嘗試直接訪問其他域,則會遇到問題。您的基於IP的呼叫可能就是這種情況?

0

本地主機只能在本機上工作,但你要知道,你的應用程序將最終從出方,其中localhost是客戶機訪問..

你需要指定的公網IP地址或域名或網絡名稱,如果您使用Intranet應用程序的內部DNS。


相關問題