所以这是一个非常基本的概念问题,但我是新手。我已经成功打开并连接了我的Windows计算机和我的Ubuntu灯服务器之间的插槽。我想通过Winsock Send函数将.txt文件通过此套接字发送到服务器上。我在哪里告诉socket / send函数将该位置放在哪个文件夹中?当我连接到服务器时,我只给了一个IP地址和端口(例如:192.168.1.25
通过端口80
)并建立连接。有没有办法让它把它放在特定的位置,比如/var/local/storage/folder
?我没有在套接字连接的send函数中看到指定结束位置的任何内容吗?
很抱歉,如果这是一个新手问题。提前谢谢。
答案 0 :(得分:0)
HTTP客户端使用HTTP协议通过TCP连接与HTTP服务器通信。 HTTP协议非常简单,但在实现简单的HTTP客户端或服务器时仍有许多缺陷需要避免,因此不是简单地编写与TCP连接并使用HTTP进行通信的代码,而是更容易使用HTTP客户端库。您的连接以及HTTP协议消息的组合/解释。一个这样流行的跨平台C库是libcurl,但在Windows上,您还可以使用特定于平台的WinINet/WinHTTP函数。如果您仍然坚持使用自己的TCP连接为自己编写HTTP通信,请通过在此答案中签出POST HTTP请求来查看文件上载的发送数据:here
如果您想自己实现HTTP客户端,那么通过使用WireShark捕获通信,检查其他HTTP客户端(例如浏览器)如何与服务器通信是明智的。即使您不想实现HTTP协议,至少在基本级别上了解HTTP协议也非常有用,即使使用预先烘焙的HTTP客户端,它也会有很大帮助。