
请教一下如何写一个通过 HTTPS 协议传输文件的接口,保存到服务器上,不使用界面,其他人调用这个接口就可以上传文件,有大佬能指点指点吗
1 Yourshell Feb 19, 2020 要不先去学习下基础? |
3 webshe11 Feb 19, 2020 如果 WebDAV 也算接口,启动 WebDAV。 |
4 izoabr Feb 19, 2020 先了解一下 HTTP 协议,以及里面的 POST 怎么用 |
5 Tink PRO 这是最基础的文件上传啊 |
6 zifangsky Feb 19, 2020 你应该一一致谢对你有帮助的人 |
7 blu10ph Feb 19, 2020 Multipart/form-data |
8 liKeYunKeji Feb 19, 2020 ``` <?php //初始化 CURL $ch = curl_init(); //目标服务器地址 curl_setopt($ch, CURLOPT_URL, '接收端接口'); //设置上传的文件 curl_setopt($ch, CURLOPT_POST, true); $data = array('name 值' => new CURLFile('绝对路径')); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_exec($ch); curl_close($ch); ?> ``` |
9 deplives Feb 19, 2020 这边建议您先学习一下《计算机网络》这门课程呢亲 |
10 DelayNoMay Feb 19, 2020 最近刚好做了一个 golang 写的 http 文件服务,可以上传,下载,删除文件 |
11 TowerLi OP @CEBBCAT 大佬,我错了,另外这些天看了很多,跟着菜鸟教程的代码实现了一个 servlet 的 jsp 页面上传文件,总体来说还是看不太明白本质,想着如果不用界面的 form 表单提交该怎么做呢? 他们提示的 spring-boot 的框架应该是最好的选择吧,现在企业里面应该都用,没用过,好难上手,都是我天资愚钝,看那么久都不会。 |
12 ipwx Feb 19, 2020 @TowerLi "不用界面的 form 表单" 都不用浏览器了,你怎么提交不是都可以么?直接 POST 走起,或者上 WebDAV 协议。除非你想要在网页上隐藏 form 表单偷偷上传?不要意思浏览器不允许那么做。 |
13 fool079 Feb 19, 2020 @TowerLi 用 form 表单只是表示 post 时的 body 是按照 form 的 enctype 类型来进行提交,你可以自己利用 FormData 来构造需要的内容,效果是一样的。只是前者简化了你的操作 |
14 CEBBCAT Feb 19, 2020 @TowerLi #11 不要那么灰心丧气,你也没有 [错] ,初学者都是在 [试错] 。上传文件的本质是通过约定好的协议发送一个文件(这里是 HTTP(S)协议)。显然 form 表单是利用了 HTML 中的 form 结构,让浏览器发出符合约定的 HTTP 包。后端程序再按照约定好的数据包结构解析网络流量,最后将获得的文件内容该存的存,该计算的计算。 我先后学习过 C、C#、Java、Python、Go 等语言,现在的工作主要使用 Go 语言,Spring 我也了解过一点点,国内确实非常流行,这意味着你能找到很多教程和能 Google 到别人的 [试错] 。 我认为编程的难处不在于框架的学习,在于编程的思维。学习能力这东西,上帝有的给的多,有的给的少,我想你应该发掘自己的长处。 我现在大四,远远担当不了你说的“大佬”,大家一起努力吧~ |
15 liKeYunKeji Feb 20, 2020 via iPhone php curl 模拟表单提交 |
16 zjyl1994 Feb 20, 2020 可以考虑开一个 POST 接口,从 body 里读数据写到硬盘里。https 的话,看 webserver 怎么配置就好了,和你程序部分没关系 |