Solved

Problem using CFHTTP to post a .docx file

Posted on 2008-10-17
6
534 Views
Last Modified: 2013-12-24
I have an application that uses a resume parsing service.  If I upload the file with a standard form, the service is able to parse the file just fine.  If I POST the file with a CFHTTP tag, the service errors out.

Is there anything further I need to do with my CFHTTP or CFHTTPPARAM tags to further mimic a "standard" form POSTing?

<html>

<head>

	<title>HTTP Post Test</title>

</head>

<body>

<h1>HTTP Post Test</h1>

 

<CFSET variables.str_url = "XxXxXxXxX">

<CFSET variables.str_did = "XxXxXxXxX">

<CFSET variables.str_pid = "XxXxXxXxX">

<CFSET variables.str_cid = "XxXxXxXxX">

<CFSET variables.str_file = "XxXxXxXxX/test5.docx">

 

<!---  This does NOT work  --->

<CFHTTP url="#variables.str_url#" method="post" redirect="yes" useragent="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)">

	<CFHTTPPARAM type="formfield" name="did" value="#variables.str_did#">

	<CFHTTPPARAM type="formfield" name="pid" value="#variables.str_pid#">

	<CFHTTPPARAM type="formfield" name="cid" value="#variables.str_cid#">

	<CFHTTPPARAM type="file" name="document" mimetype="multipart/form-data" file="#variables.str_file#">

</CFHTTP>

 

<CFOUTPUT>

<CFIF StructKeyExists(cfhttp,"filecontent")>

	#cfhttp.filecontent#

</CFIF>

 

<!---  This DOES work  --->

<form action="#variables.str_url#" method="POST" name="frmupload" enctype="multipart/form-data">

	<input type="hidden" name="did" value="#variables.str_did#">

	<input type="hidden" name="pid" value="#variables.str_pid#">

	<input type="hidden" name="cid" value="#variables.str_cid#">

	<input type="file" name="document">

	<input type="submit" name="submit_upload" value="upload">

</form>

</CFOUTPUT>

</body>

</html>

Open in new window

0
Comment
Question by:aseusainc
  • 3
  • 2
6 Comments
 
LVL 25

Expert Comment

by:dgrafx
ID: 22784932
1) method needs to be "PUT"
2) Your mime type (for type=file) needs to be the mimetype of the file you are "PUTTING"
multipart/form-data is Not a mimetype
docx is "application/vnd.openxmlformats-officedocument.wordprocessingml.document"

good luck ...
0
 
LVL 7

Author Comment

by:aseusainc
ID: 22786212
Ended up using another method completely.  Resume parsing service has a SOAP web service that I was able to invoke.
0
 
LVL 25

Expert Comment

by:dgrafx
ID: 22786327
sure ok great ...
but getting back to the question you asked - what I posted is correct.
You can use it for the future when you don't have a prefab web service to rely on.

good luck ...
0
 
LVL 7

Author Comment

by:aseusainc
ID: 22786481
I still intend to go back and test that real quick.  Will post my findings soon.
0
 
LVL 7

Accepted Solution

by:
aseusainc earned 0 total points
ID: 23016950
Changing the MIME type and PUT didn't change anything.  Anyway, switched to the webservice method.

Requesting close.
0

Featured Post

Superior storage. Superior surveillance.

WD Purple drives are built for 24/7, always-on, high-definition security systems. With support for up to 8 hard drives and 32 cameras, WD Purple drives are optimized for surveillance.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

One of the typical problems I have experienced is when you have to move a web server from one hosting site to another. You normally prepare all on the new host, transfer the site, change DNS and cross your fingers hoping all will be ok on new server…
If you don't have the right permissions set for your WordPress location in IIS, you won't be able to perform automatic updates. Here's how to fix the problem.
Internet Business Fax to Email Made Easy - With  eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, f…
Both in life and business – not all partnerships are created equal. As the demand for cloud services increases, so do the number of self-proclaimed cloud partners. Asking the right questions up front in the partnership, will enable both parties …

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

28 Experts available now in Live!

Get 1:1 Help Now