Web services 尝试使用Coldfusion Web服务上载文件时出现Enctype问题
无法启动在外部服务器中上载文件的Coldfusion Web服务 我的应用程序在“服务器A”中运行,文件存储库(外部服务器)在“服务器B”中 模板(inicio.cfm)存储在“服务器A”中,其中包含用于选择要上载的客户端文件的带有Web services 尝试使用Coldfusion Web服务上载文件时出现Enctype问题,web-services,file-upload,coldfusion,Web Services,File Upload,Coldfusion,无法启动在外部服务器中上载文件的Coldfusion Web服务 我的应用程序在“服务器A”中运行,文件存储库(外部服务器)在“服务器B”中 模板(inicio.cfm)存储在“服务器A”中,其中包含用于选择要上载的客户端文件的带有的表单。此模板执行的任务不仅仅是显示上载表单。它在表单的代码块之外执行计算、查询等。此外,此表单的操作页面是模板本身(因为我的应用程序需要执行任务) 我的表单定义的第一行代码是(在inicio.cfm中): 怎么了? 缺少有关此功能的文档。Adobe的《用户指南》并未
的表单。此模板执行的任务不仅仅是显示上载表单。它在表单的代码块之外执行计算、查询等。此外,此表单的操作页面是模板本身(因为我的应用程序需要执行任务)
我的表单定义的第一行代码是(在inicio.cfm中):
怎么了?
缺少有关此功能的文档。Adobe的《用户指南》并未在depht中解释此功能。本·福塔的书。。。一样。或者我找不到信息。
提前感谢。当表单发布到CFML服务器时,在任何代码运行之前,发布的文件都会保存在临时目录中。
所做的只是将文件从临时目录复制到您想要的位置。您的远程服务器ServerB
不知道ServerA
上发布的任何文件,因此
对您没有帮助
这种行为具有误导性。它不是上传任何东西。它只是从预定的临时目录复制。在CF服务器参与之前,web服务器处理上传
您可能需要将
服务器a上的
放到特定位置,然后它需要将该文件发布到服务器B上的web服务上。然后ServerB
应该能够使用
将其从upload temp目录传输到您需要的任何位置。也就是说,我在发布到web服务时从未尝试过这一点
或者,您可以首先将文件直接发布到ServerB
,以保存作为中介的ServerA
。当然,这可能是不可能的
<cfform method="post" name="AltaConvocatoria" enctype="multipart/form-data">
<cfcomponent>
<cffunction access="remote" returntype="void" name="cargaAnuncio">
<cfargument name="destinoAnuncio" required="yes" type="string">
<cfargument name="PrefijoNvoNombre" required="yes" type="string">
<cffile action="upload"
fileField="str_ArchivoAnuncio"
destination="#destinoAnuncio#"
nameconflict="Overwrite">
<cfset NvoNomAnuncio = #PrefijoNvoNombre# & #Right(cffile.ClientFile, 5)#>
<cfset viejoNombre1 = #destinoAnuncio# & #cffile.ClientFile#>
<cffile
action = "rename"
destination = "#NvoNomAnuncio#"
source = "#viejoNombre1#">
</cffunction>
</cfcomponent>
<cfinvoke webservice="http://192.168.208.128/podi/mgmt/alta_ga.cfc?wsdl" method="cargaAnuncio" >
<cfinvokeargument name="destinoAnuncio" value="#form.destinoAnuncio#" />
<cfinvokeargument name="PrefijoNvoNombre" value="#form.PrefijoNvoNombre#" />
</cfinvoke>
<cfinvoke component="alta_ga" method="cargaAnuncio" destinoAnuncio="#form.destinoAnuncio#" PrefijoNvoNombre="#form.PrefijoNvoNombre#">