Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CURL:客户端和服务器通信Windows c/java_Java_C_Curl - Fatal编程技术网

CURL:客户端和服务器通信Windows c/java

CURL:客户端和服务器通信Windows c/java,java,c,curl,Java,C,Curl,我对curl比较陌生,我正在尝试用C编写一个客户端,它使用curl发送字符串。另一方面,作为服务器,我有一个Java程序,它使用HttpServlet监听HTTP请求。 当我用curl发送一些数据时,我看到服务器得到了它,但不是以发送的格式。 例如,如果我正在发送数据:“8D015678” 在服务器端请求的内容将是:56、68、48、49、53、54、55、56 以下是客户端代码(c): 以下是服务器(java)的解析器代码: 这是否意味着我需要一个从ASCI到symbol的转换器? 我以为在c

我对curl比较陌生,我正在尝试用C编写一个客户端,它使用curl发送字符串。另一方面,作为服务器,我有一个Java程序,它使用HttpServlet监听HTTP请求。 当我用curl发送一些数据时,我看到服务器得到了它,但不是以发送的格式。 例如,如果我正在发送数据:“8D015678” 在服务器端请求的内容将是:56、68、48、49、53、54、55、56 以下是客户端代码(c):

以下是服务器(java)的解析器代码:

这是否意味着我需要一个从ASCI到symbol的转换器? 我以为在curl中数据是按原样传递的?我错过了什么? 如果我希望我的数据(例如8D015678)作为8D015678由服务器获取,我应该如何发送它? 请解释一下数据是如何传递的,以及如何处理curl中的客户机和接收这些请求的服务器 提前谢谢。希望很清楚,

InputStream.read(..)
在流结束时返回-1,否则该值可以简单地转换为字符。返回值和错误代码的这种组合很古老,而且非常不幸,今天的设计可能会有所不同。只需将其转换为字符并进行处理

官方文件载于

看 作为一个有效的例子

其实质是:

  // new input stream created
         is = new FileInputStream("C://test.txt");

         System.out.println("Characters printed:");

         // reads till the end of the stream
         while((i=is.read())!=-1)
         {
            // converts integer to character
            c=(char)i;

            // prints character
            System.out.print(c);
         }
   System.out.println("[requestHandlerFactory] header is not Content");
    int contentLength = request.getContentLength();
    this.content = new byte[contentLength];
    try {
        ServletInputStream input = request.getInputStream();
        int read = input.read(content, 0, contentLength);
        System.out.println("[doPost] contentLength = " + contentLength + "data = " + content[0]);
  // new input stream created
         is = new FileInputStream("C://test.txt");

         System.out.println("Characters printed:");

         // reads till the end of the stream
         while((i=is.read())!=-1)
         {
            // converts integer to character
            c=(char)i;

            // prints character
            System.out.print(c);
         }