2013-11-28 79 views
0

我(如何使用Node.js)這個返回Javascript代碼:執行時返回res.send()

var template = '<a href="http://localhost:7000/">Your Account has been activated. </a>'; 

return res.send(template); 

我需要做的就是回到最小的JavaScript代碼,會做自動重定向,而不是一個標籤。

到目前爲止用戶必須點擊鏈接,我需要它自動重定向。

想法?

+2

它返回的是什麼?我假設你正在發出一個AJAX請求,所以當你處理一個成功的(200)狀態代碼時,你會想要做一些事情:'window.location.href = xmlhttp.responseText;'並且簡單地返回URL重定向到。 –

回答

1

我假設你使用ajax,並且你在你的響應中返回HTML。您只需返回javascript:

var template = '<script type="text/javascript"> window.location.href="http://localhost:7000"; </script>'; 
return res.send(template); 

然後將其附加到您的文檔。但它不是最乾淨的解決方案。

你可以返回鏈接,並在你的ajax complete回調中使用它。

2

您可以設置Location頭:

res.setHeader('Location', 'http://someurl.com'); 

nodejs http docs

+0

如果他使用ajax,它將無法工作。 – OlivierH

+0

@OlivierH你能發表一個參考文獻來證明嗎? :) – andlrc

+0

我不使用Ajax。用戶收到郵件中的鏈接。他點擊鏈接,並將其帶到採用散列碼並激活帳戶的REST端點。 – EnterpriseXL