我在上传docx文件时遇到问题。上传后它丢失2个字节并将其保存到服务器。这是我的代码。
<cffunction name="akamaiUpload" access="private" output="false">
<cfargument name="filename" type="string" required="true">
<cfargument name="localpath" type="string" required="true">
<cftry>
<cfhttp url="http://sample.com/#arguments.filename#" method="post">
<cfhttpparam type="file" name="user_file" file="#arguments.localpath#" />
</cfhttp>
<!--- catch any error, return the error message --->
<cfcatch type="any">
<cfreturn #cfcatch.message#>
</cfcatch>
</cftry>
</cffunction>
我发现了一些具有相同问题的代码并试图应用他们的解决方案,但仍然没有用。这是代码。
<cffunction name="akamaiUpload" access="private" output="false">
<cfargument name="filename" type="string" required="true">
<cfargument name="localpath" type="string" required="true">
<cffile action="readbinary" file="#arguments.localpath#" variable="myfile">
<cfset by=CreateObject("java","java.lang.String")>
<cfset by.init(myfile, "iso-8859-1")>
<cfset contentdivider=Hash("this is my divider for this")>
<cfhttp method="POST" url="http://sample.com/#arguments.filename#" charset="iso-8859-1">
<cfhttpparam type="header" name="Content-Type" value="multipart/form-data; boundary=#contentDivider#">
<cfhttpparam type="Header" name="Accept-Encoding" value="deflate;q=0">
<cfhttpparam type="Header" name="TE" value="deflate;q=0">
</cfhttp>
<!--- returning true for successful upload --->
<cfreturn true>
</cffunction>
这里有没有人遇到同样的问题?请分享一些建议。