有什麼方法可以使用jQuery調用f#庫而不必將其包裝到Web服務方法中?jQuery Ajax調用F#?
回答
正如評論中提到的,您可以將F#翻譯爲JavaScript。這實際上非常可行,因爲它可以使用引號(F#代碼的高級表示)。有兩個項目可以做到這一點。一個是相當複雜的commercial project named WebSharper(它也有其他功能),另一個是open source project FSharp.Javascript。
如果你想避開網絡服務,你也可以編寫一個簡單的HTTP服務器。這將是一個獨立的應用程序,您可以在您的服務器上運行,它將直接處理請求。我在talk in London最近使用HttpListener
類。你可以find the sample here。
絕對有其他的方法 - 如果你在ASP.NET應用程序中工作,那麼你可以使用HttpHandler
或者用F#編寫的頁面直接處理請求。將主要前端作爲C#項目可能更容易,但是您可以在F#中編寫頁面/處理程序,只需在C#中引用它或繼承它(例如using ASP.NET MVC is here)。
+1:我的公司使用ASP.NET MVC + jquery來達到這個目的:jQuery對控制器方法進行Ajax調用,該方法返回一個JsonResult,jQuery可以將其解壓縮並顯示在屏幕上。我們在後端使用C#,但原則上沒有理由不使用F#。 – Juliet 2010-12-11 18:33:30
近幾個月來,FSharp.Javascript項目的改進非常激烈,我很想聽到一些反饋意見。我還創建了用於ASP.NET MVC框架的FSharp.Javascript.Mvc(https://github.com/jgreene/FSharp.Javascript.Mvc)項目。作爲一個例子,我在F#中編寫了俄羅斯方塊,它在這裏的瀏覽器中運行:http://fscript.justsimplecode.com/canvas – justin 2010-12-11 19:27:18
@謝謝你的全面回答和有用的鏈接! – dexter 2010-12-11 23:47:00
你可以寫一個HttpHandler作爲包裝器。
- 1. F#JQuery Ajax Post
- 2. jQuery ajax調用
- 3. jQuery的Ajax調用調用
- 4. jquery ajax調用spring調用?
- 5. JQuery的Ajax調用
- 6. jquery ajax調用mysql
- 7. jquery Ajax調用servlet
- 8. Ajax調用jQuery中
- 9. Asp.net jquery ajax調用
- 10. jquery ajax調用codeigniter
- 11. jQuery的Ajax調用
- 12. ajax與jquery調用
- 13. jQuery中的jQuery AJAX調用
- 14. 從f調用函數f
- 15. jQuery和f之間的衝突:ajax
- 16. Ajax調用和jQuery:停止調用ajax調用
- 17. Ajax,Jquery,使用$ .ajax調用程序
- 18. jsp ajax使用jquery調用
- 19. 使用jQuery AJAX調用
- 20. jquery Ajax回調
- 21. jQuery AJAX回調
- 22. jQuery Ajax - 回調
- 23. ajax調用後無法調用jquery
- 24. 調用一個jQuery JavaScript的Ajax調用
- 25. 如何在jQuery中調用ajax調用
- 26. Javascript的AJAX調用jquery調用
- 27. 從jQuery中調用ajax調用json值
- 28. jQuery ajax異步調用
- 29. Phonegap jQuery Ajax來調用webservice
- 30. jQuery的Ajax調用給parsererror
我很難想象一個替代方案,就是編寫一個FSharp編譯器或IL反編譯器,它會生成JavaScript作爲其目標語言。你到底在找什麼?有什麼問題會使您拒絕將您的功能作爲服務公開? – JasonTrue 2010-12-11 02:58:58
您可以編寫自己的http服務器,基本上打開端口80並對相應的命令作出反應。 – 2010-12-11 03:05:15
@Jason,這是嚴格的理論測試項目,我正在努力解決。 – dexter 2010-12-11 23:45:08