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