相关疑难解决方法(0)

curl会删除换行符吗?

我正在通过curl发布一个文本文件,其中包含多行的列表到我的服务.当我在Spring MVC控制器中读取请求的主体时,没有新行字符,所有文本都在一行上.

curl会删除换行符吗?有没有办法维护新行字符,因为我需要它们来解析文本.这是我用来阅读帖子正文的代码片段:

    StringBuilder builder = new StringBuilder();
    String line = null;

    try {
        BufferedReader reader = request.getReader();
        while ((line = reader.readLine()) != null) {// this is just one line of text!
            builder.append(line);
        }
    } catch (Exception e) { 
        //handle exception
    }
Run Code Online (Sandbox Code Playgroud)

java curl spring-mvc

36
推荐指数
1
解决办法
2万
查看次数

如何在不使用-F的情况下重写此CURL multipart/form-data请求?

如何重写以下CURL命令,以便它不使用该-F选项,但仍然生成完全相同的HTTP请求?即,以便它直接传递身体中的multipart/form-data.

curl -X POST -F example=test http://localhost:3000/test
Run Code Online (Sandbox Code Playgroud)

curl http multipartform-data

31
推荐指数
4
解决办法
8万
查看次数

发布请求中的换行符

我想发送新行字符作为post请求(文本)变量的值的一部分.我正在使用wget来发出请求.我该如何编码呢?

post newline wget

9
推荐指数
1
解决办法
2万
查看次数

cURL 配置文件 (-k / --config) JSON 换行符

我正在尝试构建一个在-d/--data正文中包含换行符的 cURL 配置文件,但它似乎与在命令行上的工作方式不同。

在命令行上,我可以运行:

curl -XPUT 'http://localhost:9200/mytype/_search' -d '{
  "query": {
    "match_all": {}
  }
}'
Run Code Online (Sandbox Code Playgroud)

并且数据体被正确传递。

但是,如果我尝试在 curl -K/--config文件中执行此操作,则它不起作用。

测试卷曲:

-XPUT
-d '{
  "query": {
    "match_all": {}
  }
}'
Run Code Online (Sandbox Code Playgroud)

然后运行curl -K test.curl 'http://localhost:9200/mytype/_search,我提交数据的端点无法解析。如果我将所有数据放在一行上并使用双引号,我可以让它工作,但这会破坏我正在寻找的一些易读性。

test2.curl 有效

-XPUT
-d "{\"query\": {\"match_all\": {} } }"
Run Code Online (Sandbox Code Playgroud)

我也试图复制这个heredoc答案:How to send line break with curl? 但同样它在--config文件中不起作用

curl heredoc character-encoding

5
推荐指数
1
解决办法
215
查看次数

卷曲-F换行未正确解释

我正在尝试使用bash脚本中的curl通过pushover发送通知.我无法curl -F正确解释断线.

curl -s \
-F "token=TOKEN" \
-F "user=USER" \
-F "message=Root Shell Access on HOST \n `date` \n `who` " \
https://api.pushover.net/1/messages.json > NUL
Run Code Online (Sandbox Code Playgroud)

我试过了:

\n 
\\\n 
%A0
Run Code Online (Sandbox Code Playgroud)

我宁愿直接推送消息,而不是通过文件.

bash terminal curl pushover

4
推荐指数
1
解决办法
4017
查看次数