[英]C# HttpWebResponse upload PDF doesn't work/ works for word docs
我試圖將pdf文件發布到rest api,但收到500個內部服務器錯誤。 該代碼適用於Word文檔,並且在Visual Studio 2015中也可在調試模式下使用,但無法生產。 在這一點上,我不確定是否是代碼問題。 救命了,頭發沒剩多少。
我嘗試了IE和chrome都沒有區別。 我試過其他文檔文件類型確實可以,但是PDF。 除內容類型外,我是否還需要對PDF進行其他操作?
private bool Request_login_mydgsi_ca(out HttpWebResponse response)
{
response = null;
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://login.mydgsi.ca/WebAPI/Attachment?aboutType=Candidate&referenceID="+Candidate_id.Trim()+"&attachmentTypeID=Resume&Name=Resume&expirationDate=1900/01/01&Note=Candidate%20Resume");
request.Headers.Set(HttpRequestHeader.CacheControl, "no-cache");
string client_id = ConfigurationManager.AppSettings["client_id"].ToString();
string secret_id = ConfigurationManager.AppSettings["secret_id"].ToString();
ERApplyForJobs ePosition = new ERApplyForJobs(client_id, secret_id, "");
string tokenAPI = ConfigurationManager.AppSettings["APIToken"].ToString();
string secruityToken = ePosition.getSecurityToken(tokenAPI);
request.Headers.Set(HttpRequestHeader.Authorization, "Bearer " + secruityToken );
request.ContentType = "multipart/form-data; boundary=---224842443399224314204538";
request.KeepAlive = true;
request.Method = "POST";
request.ServicePoint.Expect100Continue = true;
string contentType = MimeMapping.GetMimeMapping(fileName);
string body = @"---224842443399224314204538
Content-Disposition: form-data; name=""""; filename=""" + fileName + @"""
Content-Type: " + contentType + @"<!>" + fullFileName + @"<!>---224842443399224314204538--";
WriteMultipartBodyToRequest(request, body);
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException e)
{
response = (HttpWebResponse)e.Response;
}
catch (Exception)
{
if (response != null) response.Close();
return false;
}
return true;
}
問題與文件上傳有關,無法獲取完整路徑。 奇怪的是,它在文字上起作用,但不適用於PDF。
我不確定為什么它適用於Word文檔,而不能用於PDF。 以我的方式,我認為兩者都應該失敗。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.