2014-02-07 28 views
0

我有一個jsonp RESTful服務,它根據某些請求參數提供內容。現在,大多數這些內容不會頻繁更改,並且可以輕鬆緩存。現在,我們使用Akamai邊緣服務器,並希望在那裏緩存許多這些響應。但是我們意識到最終客戶端如何進行jsonp調用存在問題。下面是一個示例查詢:我們可以在jsonp中使用固定回調方法來緩存響應


http://localhost:8080/community/service/rest/getContent/jsonp?cb=jQuery18304010053557777724_1391037749519&p=test&v=2015&_=1391037760418 

正如你所看到的,回調PARAM CB = jQuery18304010053557777724_1391037749519似乎是自動生成的jQuery是每個請求唯一的。此外,還有& _ = 1391037760418這是用作緩存擊中器。現在,我們可以將緩存設置爲false。但有沒有辦法處理回調參數?我們可以使用靜態方法名稱嗎?如果我們使用靜態方法並進行緩存,會有什麼壞處?它會爲多個請求創建任何競爭條件嗎?

對不起,對於一堆問題。我不是一個jQuery人員,對我來說,解決這個問題並不容易。但緩存漂亮對我們很重要。

如果有人能提出解決方案/最佳實踐來解決這個問題,我將不勝感激。

感謝

回答

1

沒有什麼您可以在客戶端或服務器端,這將解決這個問題上做的。回調參數不能修復,因爲回調的生命週期必須由客戶端處理,客戶端可能有多個請求在運行。然而一個快速谷歌爲"Akamai jsonp" resulted in this

這看起來是代碼有Akamai的緩存json和要求,作爲json包裹jsonp動態。

+0

謝謝,我來看看。我在stackoverflow中偶然發現了這個話題,它解決了類似的問題。 http://stackoverflow.com/questions/3296510/static-json-files-over-cdn-via-jsonp – Shamik

+0

@Shamik認爲,「接受的解決方案」,並沒有解決手頭的問題。 'Jsonp'是繞過'Cross Origin'安全問題的黑客攻擊。通過嘗試在客戶端執行'Jsonp'封裝,您必須已經解決了'跨源',在這種情況下,您可以使用'Json'代替。還有'jsonp'的實現會導致內存泄漏。 – Aron

相關問題