问题标签 [clj-http]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
703 浏览

clojure - 使用 clj-http 传递多个查询参数值

我需要向外部服务 (Twilio) 发出 Web 请求,并为同一参数指定多个值,例如

我如何告诉 clj-http 像这样对请求进行编码?

0 投票
1 回答
1031 浏览

authentication - 如何在 clj-http 中设置 cookie?

例如,我需要解析来自我的 imdb.com 帐户的数据。因此,任务是获取当前记录的页面。我从浏览器中获取了“id”cookie。并发出 GET 请求,但它不起作用。

我想我需要将我的 id cookie 设置为 clj-http.cookies/cookie-store。但是怎么做?

0 投票
1 回答
1003 浏览

clojure - 在 Clojure 中上传文件时出现 422 无法处理的实体响应

我正在尝试模拟这个 curl 请求

使用以下代码

但我收到 Zendesk 的“422 Unprocessable Entity”响应。文件/临时文件#object[java.io.File 0x3768306f "/var/folders/l3/7by17gp51sx2gb2ggykwl9zc0000gn/T/ring-multipart-6501654841068837352.tmp"]按照请求进入。

我玩过 clojure.java.io coercions (like clojure.java.io/output-stream),如将图像形式 clj-http 请求保存到文件中所述,但这没有帮助。

(PS。我很确定我不需要身份验证,因为我可以直接上传到 Zendesk 以通过 Postman 工作。)

0 投票
2 回答
640 浏览

clojure - 确保所有请求完成后关闭 clj-http 连接管理器的正确方法

我有一个代码,它是clj-httpcore.async设施和atom. 它创建了一些线程来获取和解析一堆页面:

这个想法是使用多个线程来减少获取和解析页面的时间,但我不想服务器超载,一次发送大量请求 - 这就是使用连接管理器的原因。我不知道我的方法是否正确,欢迎提出建议。目前的问题是最后一个请求失败,因为连接管理器在它们终止之前关闭:Exception in thread "async-thread-macro-15" java.lang.IllegalStateException: Connection pool shut down.

主要问题:如何在正确的时刻关闭连接管理器(以及为什么我当前的代码无法执行此操作)?支线任务:我的方法对吗?如果没有,我可以做些什么来一次获取和解析多个页面,同时不使服务器超载?

谢谢!

0 投票
0 回答
41 浏览

clojure - 创建 Leiningen 插件时如何从 leiningen-2.7.1-standalone.jar 中排除依赖项?

我正在编写一个使用库及其版本的Leiningen 插件clj-http"3.6.1"

事实证明,Leiningen 本身也使用clj-http库,但它的版本是版本,这给我带来了一些问题。

有没有办法覆盖 leiningen 的clj-httplib 版本?

0 投票
1 回答
1248 浏览

http - 如何在 clojure/ring 中进行 http 调用?

我的 Web 客户端(用 编写cljs)连接到clj需要进行一些第三方 API 调用的后端(用 编写)。它必须在服务器上完成,然后以特定方式转换结果并发送回客户端。

这是我的其中一个网址的处理程序

它不是返回{:body "something"},而是返回以下错误:

我究竟做错了什么?

0 投票
1 回答
466 浏览

clj-http - 尝试连接到 elasticsearch 时,Clj-http 抛出错误?

索引尚未创建,可能是导致它的代码。

在 elasticsearch:1.7 中它工作正常,但在较新的版本 6.0 clj-http 中它失败了。

0 投票
1 回答
16619 浏览

http - 如何修复 ERR_INVALID_CHUNKED_ENCODING 错误?

我有一个充当代理服务的 Clojure 应用程序。目标是通过路径“/grafana”代理对http://127.0.0.1:3000(Grafana服务)的请求,这样如果我通过浏览器访问http://127.0.0.1/grafana,它应该代理我的请求端口 3000 并显示 Grafana 的 UI。

我遇到的问题是我在浏览器中收到 ERR_INVALID_CHUNKED_ENCODING 响应。在 Wireshark 中,对端口 3000 的请求表明 HTTP 响应重新组合了 3 个 TCP 数据包。但是,通过我的代理的请求的响应没有被重新组装,导致分块错误。有人对如何解决这个问题有任何想法吗?

谢谢。

0 投票
1 回答
276 浏览

cookies - 使用 clj-http.cookies 在请求中设置 cookie

我正在尝试为 clj-http 创建一个客户端 cookie,以便为请求设置一个 cookie。目前我有 [cookie-name cookie-val] 格式的 cookie 数据

然后我像这样调用 to-basic-client-cookie :

(clj-http.cookies/to-basic-client-cookie [cookie-name cookie-val])

但是,这会产生空指针异常。有人知道我说错了吗?clojure 很新,如果这是一个愚蠢的问题,很抱歉。

0 投票
1 回答
68 浏览

java - 将所有对 /api/v1/** 的请求传递给旧的 api 服务器

对于我们 API 的第二次迭代,我们正在执行完全重写。

为了使过渡顺利进行,我想使用 API 端点 /api/v1/** 设置我们的新服务器,使其成为旧服务器的镜像。

ring/compojure 中是否有任何内置功能可以让我将整个请求传递给 clj-http(或其他 http 客户端)?


FIY:两个服务器都是用 Clojure 编写的,使用 Compojure 和 ring 库。