http get请求与c中的https请求有何不同?

时间:2016-01-15 14:25:04

标签: c http https http-1.0

早期实现了从C语言POS系统到服务器的get和post http请求。但是出于安全考虑,服务器仅在端口443上接受https。

实施无法在端口443上显示http错误400/362。

以下是示例代码,

char *build_get_query(char *host, char *page)
    {
      char *query;
      char *getpage = page;
      char *tpl = "GET /%s HTTP/1.0\r\nHost: %s\r\nUser-Agent: %s\r\n\r\n";
      /*if(getpage[0] == '/'){
        getpage = getpage + 1;
        fprintf(stderr,"Removing leading \"/\", converting %s to %s\n", page, getpage);
      } */
      // -5 is to consider the %s %s %s in tpl and the ending \0
      query = (char *)malloc(strlen(host)+strlen(getpage)+strlen(USERAGENT)+strlen(tpl)-5);
      sprintf(query, tpl, getpage, host, USERAGENT);
      return query;
    }

P.S没有C专家 谢谢

1 个答案:

答案 0 :(得分:1)

您无法使用 https 发送原始文本,但需要SSL或TLS。根据您正在使用的平台,您可以使用gnutlsopenssl。并使您的套接字 TLS 能够向/从服务器发送/接收加密数据。