注册 登录
编程论坛 VFP论坛

有人使用过腾讯云的对象存储(COS)吗?

大树临风 发布于 2021-02-14 04:09, 2635 次点击
想编写一个程序,将文档放在腾讯云的COS上,然后在客户端访问,一直没有搞清楚怎么调用对应的API
15 回复
#2
大树临风2021-02-14 21:03
哪位大神帮忙看看,到底是怎么调用的,相关内容见https://cloud.
#3
radiofan2021-02-15 10:51
参见SDK文档。
#4
大树临风2021-02-16 10:41
以前调用API都有类似下面的语句
DECLARE  INTEGER  ShellExecute  IN  shell32.DLL  INTEGER  HWND,;   
....
DECLARE  INTEGER  GetDesktopWindow  IN  win32api   
....
那么,调用COS的API,应该怎么写对应的声明呢?恳请大神指点,如能写出示例代码,不胜感激。
#5
大树临风2021-02-17 08:21
恳请哪位大神指点一下
#6
吹水佬2021-02-17 09:28
以下是引用大树临风在2021-2-16 10:41:01的发言:

以前调用API都有类似下面的语句
DECLARE  INTEGER  ShellExecute  IN  shell32.DLL  INTEGER  HWND,;   
....
DECLARE  INTEGER  GetDesktopWindow  IN  win32api   
....
那么,调用COS的API,应该怎么写对应的声明呢?恳请大神指点,如能写出示例代码,不胜感激。

VFP的DECLARE命令是用来调用动态链接库(DLL),WIN API的DLL是相对EXE来说的,EXE是静态的,DLL是动态的。
COS API应该不是WIN API,可以参考COS API的SDK开发文档资料。
#7
大树临风2021-02-18 09:02
回复 6楼 吹水佬
感谢版主,我再研究一下。
#8
radiofan2021-02-18 09:27
以下是引用大树临风在2021-2-18 09:02:57的发言:

感谢版主,我再研究一下。


各类API都有相应技术支持,你可以联系他们,他们会提供很好的技术支持(前提是你自己能够做一些基本的事情)。
#9
大树临风2021-02-19 16:51
回复 8楼 radiofan
问过腾讯云的在线帮助,回复是涉及第三方编程语言的内容就不能提供技术支持了,更何况有的人都不知道VFP了。
腾讯云COS的帮助文档提到的XML API,以前没有见过调用这种API的示例啊,能否再帮忙看看,https://cloud.
#10
fown2021-02-20 11:40
这和你使用哪咱语言没多大关系,里面的帮助文 件写的很清楚 了,GET 的方式
  oXml = NewObject("Microsoft.XmlHttp")
               oXml.open("GET", "网址", .F.)
               oXml.setRequestHeader("Content-Type", "application/x-www-form-urlencoded") &&这里从帮助文 件找头部
               oXml.send(postS)
               cZfc = oXml.responseBody
               OP=oXml.responseText
                RELEASE oXml   
#11
大树临风2021-02-21 09:09
回复 10楼 fown
非常感谢,测试如下代码成功:
   oXml = newObject('Msxml2.XMLHTTP')
   oXml.open("Get","https://xxxx-1302910000.cos.ap-guangzhou. , .F.)
   oXml.setRequestHeader("Host","xxxx-1302910000.cos.ap-guangzhou.)   
   oXml.send()
   cZfc = oXml.responseBody
   OP=oXml.responseText
   MESSAGEBOX(OP)
   RELEASE oXml

但是有个新问题,就是如何将下载下来的文档保存的指定的文件夹中呢?现在是保存在“C:\Users\pjpc\AppData\Local\Microsoft\Windows\INetCache\IE\HA37JXN1”中了,而且文件名变为3[1].txt
#12
大树临风2021-02-21 11:20
回复 10楼 fown
非常感谢,下面的代码测试成功,但是有个新问题,下载的文件可以指定保存位置和名称吗?目前是保存在临时的缓存区了。

   oXml = newObject('Msxml2.XMLHTTP')
   oXml.open("Get","https://xxxx-xxxxxxxxxx.cos.ap-guangzhou. , .F.)
   oXml.setRequestHeader("Host","xxxx-xxxxxxxxxx.cos.ap-guangzhou.)   
   oXml.send()
   cZfc = oXml.responseBody
   OP=oXml.responseText
   MESSAGEBOX(OP)
   RELEASE oXml
#13
大树临风2021-02-22 08:17
回复 10楼 fown
了解了一下,get到的文件内容包含在body中了,如何能将其另存为源格式(doc或pdf)的文件呢?请再指点一下,谢谢。
#14
sdta2021-02-22 11:05
保存为TXT文件也行吧
#15
大树临风2021-02-22 12:52
回复 14楼 sdta
下载的文件是word文档和PDF文档,所以需要按原来格式保存
#16
大树临风2021-02-22 19:11
终于找到了,使用strtofile即可,如下:
...
strtofile(loXmlHttp.responseBody ,"d:\123.doc")
...
1