2012-10-24 29 views
3

我有一個html輸入,通過ajax調用將查詢字符串發送到我的php服務器。搜索字符串可能很複雜,並允許過濾器,我的實現問題尋找反饋是應該處理客戶端的字段/值的解析,並動態地添加帖子值,或者我應該處理服務器端的一切?我應該在客戶端還是服務器上實現我的搜索引擎字符串分析器?

例如:在搜索框中可以輸入的東西,如

'search string category:sports submitted:today' 

然後,我既可以

的JavaScript提交

(POST) q='search string category:sports submitted:today' 

服務器解析到

query='search string' 
category='sports' 
submitted'today' 

OR

的JavaScript解析,並提交

(POST) q='search string' 
(POST) category='sports' 
(POST) submitted='today' 

服務器處理後的參數

query='search string' 
category='sports' 
submitted='today' 
+2

也取決於你想要的可擴展性。如果你製作這個RESTful或類似的東西,你不能期望服務在客戶端解析 - 你總是需要服務器提供的回退。正如客戶端驗證永遠不夠 - 服務器處理應始終在那裏最終實施。您還可以包括客戶端處理以改善客戶端交互。 – Ian

回答

1

取決於您希望應用程序的交互方式。

如果客戶端在用戶輸入時解析它,則可以提供自動填充功能和驗證。 否則,您必須等待用戶完成,然後從服務器接收反饋。

從技術上講,解析服務器端並不是一件大事。但它可能不是最佳的應用程序行爲。

1

我會選擇,因爲服務器和客戶端之間的最小相互作用的方式1。

相關問題