최근 검색
최근 검색 없음

Marcus Dawideit
가입한 날짜: 2023년 1월 19일
·
마지막 활동: 2024년 5월 27일
팔로잉
0
팔로워
0
총 활동 수
7
투표 수
0
플랜 수
3
활동 개요
배지
문서
게시물
커뮤니티 댓글
문서 댓글
활동 개요
님의 최근 활동 Marcus Dawideit
Marcus Dawideit님이 에 게시물을 만듦
Good morning,
I have a strange behaviour when uploading files via API. If I use Zendesk own ZAF client for my request then the uploaded PDF is corrupt, if the upload is made via a JQuery request, for example, then the file is OK.
Source with Client.Request / Corrupt Upload File
async function fetchFile(fileUrl, fileName, filecontentType) {
try {
const blobResponse = await $.ajax({
url: fileUrl,
method: 'GET',
xhrFields: {
responseType: 'blob'
}
});
var formData = new FormData();
formData.append('file', blobResponse, fileName);
const options = {
url: '/api/v2/uploads.json?filename=' + encodeURIComponent(fileName),
type: 'POST',
processData: false,
contentType: false,
headers: {
'Content-Type': filecontentType
},
data: formData
};
const response = await client.request(options);
if (typeof response === 'string') {
responseData = JSON.parse(response);
} else {
responseData = response;
}
return responseData.upload.token;
} catch (error) {
console.error('Fehler beim Senden der Anfrage an den Server:', error);
if (error.response) {
console.error('Response data:', error.response.data);
}
}
}
The same source with Upload via Jquery / Upload File OK
async function fetchFile(fileUrl, fileName, filecontentType) {
try {
const blobResponse = await $.ajax({
url: fileUrl,
method: 'GET',
xhrFields: {
responseType: 'blob'
}
});
var formData = new FormData();
formData.append('file', blobResponse, fileName);
const options = {
url: 'https://.zendesk.com/api/v2/uploads.json?filename=' + encodeURIComponent(fileName),
type: 'POST',
processData: false,
contentType: false,
headers: {
'Content-Type': filecontentType,
'Authorization': 'Basic ' + btoa(zendeskEmail + '/token:' + zendeskApiToken)
},
data: formData
};
const response = await $.ajax(options);
if (typeof response === 'string') {
responseData = JSON.parse(response);
} else {
responseData = response;
}
return responseData.upload.token;
} catch (error) {
console.error('Fehler beim Senden der Anfrage an den Server:', error);
if (error.response) {
console.error('Response data:', error.response.data);
}
}
}
Does anyone have any idea what the problem might be? I am grateful for the advice !
Thanks in advance,
Marcus
2024년 5월 27일에 게시됨 · Marcus Dawideit
0
팔로워
1
투표
1
댓글
Marcus Dawideit님이 에 댓글을 입력함
Hello,
With the example from above and the current attachment token I always get the following error message back:
{
"error": "RecordInvalid",
"description": "Record validation errors",
"details": {
"base": [
{
"description": "Uploads is invalid"
}
]
}
}
API Request:
{
"ticket": {
"comment": { "body": "See PDF.", "uploads": ["i2duiFM7GNcgJxo48HJWJFoA1"] }
}
}
Any recommondations or advices ?
Thanks !
Best regards,
Marcus
댓글 보기 · 2023년 4월 26일에 편집됨 · Marcus Dawideit
0
팔로워
0
투표 수
0
댓글