gpt4 book ai didi

ajax - 在 clojurescript 中实现 ajax 调用

转载 作者:行者123 更新时间:2023-12-03 01:52:33 24 4
gpt4 key购买 nike

我是 clojurescript 的新手,希望通过纯粹用 clojurescript 实现以前编写的应用程序来进行更深入的研究,但对于实现 ajax 调用却不知所措。任何人都可以向我指出一个在线示例或为我提供一两个代码片段吗?

最佳答案

2016 年 1 月 22 日更新

虽然它仍然有效,但最初的答案来自普遍缺乏具有超过 1 个贡献者的 ClojureScript 解决方案的时期。与其直接利用 XhrIo,不如考虑使用维护良好、功能丰富的解决方案来包装它,例如 cljs-ajax ,正如下面 Mikhail D 所建议的!

<小时/>

好吧,既然 Clojurescript 利用了 Google 的 Closure JavaScript 库,快速搜索 Closure 文档就会发现 xhrIo 作为生成 AJAX 调用的正确方法:

Example using Closure's Asynchronous XMLHttpRequests with XhrIo

goog.net.XhrIo.send(url, opt_callback, opt_method, opt_content,
opt_headers, opt_timeoutInterval)

快速查看 Clojurescript 源代码可以发现以下功能:

From src/cljs/clojure/browser/net.cljs in clojure / clojurescript

(defn xhr-connection
"Returns an XhrIo connection"
[]
(goog.net.XhrIo.))

因此,类似的事情应该会产生预期的结果:

(def xhr xhr-connection)

(defn myCallback [replyValue]
... Do Something with replyValue
... for example: (someJsonFunc (.getResponseJson (.target replyValue))))

(defn ajax-json [url]
(.send xhr url myCallback))

对于 JSONP,您可以使用 goog.net.Jsonp 执行类似的操作。详情请参阅链接:

JSONP Closure API

希望有人觉得这有帮助!

关于ajax - 在 clojurescript 中实现 ajax 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8554745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com