当前位置: 首页 > news >正文

网站制作难点/百度广告联盟下载

网站制作难点,百度广告联盟下载,购买域名后怎么使用,电商电商网站建设我正在乱用Java中的HTTP和套接字,希望你能对此有所了解:当我用Java SE 11编写的HTTP服务器没有读取整个请求然后响应时,客户端没有得到它或者收到错误。这是为什么?在服务器读取整个请求之前,客户端是否无法读取响应&a…

我正在乱用Java中的HTTP和套接字,希望你能对此有所了解:

当我用Java SE 11编写的HTTP服务器没有读取整个请求然后响应时,客户端没有得到它或者收到错误。这是为什么?在服务器读取整个请求之前,客户端是否无法读取响应?如果在下面的代码段中执行对readBody的调用,则可以正常工作。如果响应具有Content-Length标头和文本正文,它也可以正常工作。这实际上对我来说更令人费解。

我的示例请求是带有数据fds的POST。邮递员说“无法得到任何请求”,卷曲说“卷曲:(56)Recv失败:连接由同行重置”。

import java.io.*;

import java.net.Socket;

import java.util.*;

class Handler {

public synchronized void read(Socket incoming) {

try (incoming;

OutputStream outputStream = incoming.getOutputStream();

InputStream inputStream = incoming.getInputStream();

PrintWriter pw = new PrintWriter(outputStream)) {

writeRequest(inputStream);

pw.print("HTTP/1.1 200 OK

");

pw.print("

");

pw.flush();

} catch (IOException e) {

System.out.println("ERROR: " + e.getMessage());

e.printStackTrace();

}

}

private void writeRequest(InputStream inputStream) throws IOException {

String verbLine = readLine(inputStream);

Map headers = readHeaders(inputStream);

//readBody(inputStream, headers);

}

private void readBody(InputStream inputStream, Map headers) throws IOException {

Optional optKey = headers.keySet().stream()

.filter(k -> k.equalsIgnoreCase("Content-Length"))

.findFirst();

if (optKey.isPresent()) {

int contentLength = Integer.parseInt(headers.get(optKey.get()));

byte[] bytes = inputStream.readNBytes(contentLength);

}

}

private Map readHeaders(InputStream inputStream) throws IOException {

Map headers = new HashMap<>();

while (true) {

String line = readLine(inputStream);

if (line == null || line.isEmpty()) {

return headers;

}

String key = line.split(":")[0].trim();

String value = line.split(":")[1].trim();

headers.put(key, value);

}

}

private String readLine(InputStream inputStream) throws IOException {

byte[] buf = new byte[200];

int offset = 0;

while (true) {

int read = inputStream.read();

if (read == -1) {

return null;

}

buf[offset] = (byte) read;

if (buf[0] == '

' || (buf[0] == '' && buf[1] == '

')) {

return "";

}

if (buf[offset] == 0x0A) {

int endOfLine = buf[offset - 1] == 0x0D ? offset - 1 : offset;

return new String(buf, 0, endOfLine);

} else {

offset++;

}

}

}

}

http://www.lbrq.cn/news/1329661.html

相关文章:

  • 门户网站类型有哪些/外链火
  • 邢台建设一个企业网站/常见的网站推广方法有哪些
  • 公司网站怎么做才能有官网二字/搜索网站排名优化
  • 数学老师做直播的网站/自动点击关键词软件
  • 小米路由器mini做网站/网络口碑推广公司
  • 如何登录中国建设银行河北分行网站/全球疫情最新数据统计
  • wordpress cart插件/武汉seo工厂
  • 做经营性的网站备案条件/软文推送
  • 响应式网站开发/深圳网络推广的公司
  • 做阿里巴巴网站 店铺装修免费吗/好搜网惠州seo
  • 深圳哪个网站发布做网站/白山seo
  • 做一个同城app得多少钱/八上数学优化设计答案
  • 做网站的文章/永久免费google搜索引擎
  • 成都网站建设类岗位/外贸网站免费推广
  • 合肥今天的最新消息/深圳seo优化服务
  • 网站设计制作系统哪个好/百度seo推广工具
  • 太空为什么要建站/网络营销的推广方式都有哪些
  • a做爰视频免费网站/搜索引擎有哪些网站
  • 人工智能网站开发/电商平台怎么加入
  • 广州住房公积金建设银行预约网站/海淀seo搜索引擎优化公司
  • django做网站怎样/国内最大的搜索引擎
  • 思乐网站建设/谷歌首页
  • 本地高端网站建设信息大全/找平台推广
  • 上传的网站打不开怎么办/如何建立网站服务器
  • 做网站的office/西安竞价托管公司
  • 网站小程序app开发/网站seo优化方案项目策划书
  • 深圳建网站公司怎么选择/产品推广策划书
  • 比较靠谱互联网推广公司/什么是优化
  • 网站备案注意事项/软件优化
  • 免费浏览网站的软件/百度网址大全 旧版本
  • 百元级工业级核心板:明远智睿×瑞萨V2H,开启AIoT开发新纪元
  • 电商修图,尺寸修改适配各大电商平台
  • 《Linux服务与安全管理》| samba服务器配置匿名模式
  • Java 排序
  • 源代码管理工具有哪些?有哪些管理场景?
  • MySQL 全详解:从入门到精通的实战指南