העלאת קובץ (nodejs) לא ממספר אוטומטי
-
זה הקוד שלי:
function performYemotUp(user,pass,path,file) { const fileName = file; const phpEndpoint = 'https://www.call2all.co.il/ym/api/UploadFile'; let fileBuffer = ''; if (fileName) { const fileContent = fs.readFileSync(fileName); fileBuffer = Buffer.from(fileContent); } const formData = new FormData(); if (fileName){ formData.append('file', fileBuffer, { filename: fileName }); } formData.append('path', 'ivr2:2/55/'); formData.append('token', user + ':' + pass); formData.append('convertAudio', "1"); formData.append('autoNumbering', 'true'); axios.post(phpEndpoint, formData, { headers: { 'Content-Type': `multipart/form-data; boundary=${formData._boundary}`, }, }).then(response => { console.log(response.data); return response.data }) .catch(error => { console.error(error); }); }הקובץ מועלה בשם 55.wav אשמח לעזרה, תודה רבה!!
-
@פיסטוק-פרווה כתב בהעלאת קובץ (nodejs) לא ממספר אוטומטי:
formData.append('autoNumbering', 'true');
מה השאלה בעצם?
-
@צדיק-תמים
זה אמור לעשות מספור אוטומטי 000 וזה לא עושה -
@פיסטוק-פרווה תנסה לשלוח את הפרמטרים לא בform אלא בparams
await axiosInstance.post('UploadFile', form, { headers: form.getHeaders(), params: { convertAudio: 1, path: ivr2:2/55/', autoNumbering: true } }); -
@צדיק-תמים
הסתבכתי בקטע של צירוף הקובץ, זה הקוד שעשיתי:function performYemotUp(user,pass,path,file) { const fileName = file; const url = 'https://www.call2all.co.il/ym/api/UploadFile'; let fileBuffer = ''; if (fileName) { const fileContent = fs.readFileSync(fileName); fileBuffer = Buffer.from(fileContent); } const formData = new FormData(); if (fileName){ formData.append('file', fileBuffer, { filename: fileName }); } axios.post( url, {}, { headers: { 'Content-Type': `multipart/form-data; boundary=${formData._boundary}`, }, params: { convertAudio: 1, path: 'ivr2:2/55/', autoNumbering: true } } ) .then(response => { return response.data; console.log(response.data) }) .catch(error => { return fail(error); }); } -
@פיסטוק-פרווה יש לך כאן קוד טוב שמעלה גם קבצים גדולים
https://tchumim.com/post/159377 -
אם כבר כתבתי...
import axios from 'axios'; import fs from 'fs'; import FormData from 'form-data'; axios.defaults.baseURL = 'https://www.call2all.co.il/ym/api/'; async function uploadFile (user, pass, path, filePath) { if (!fs.existsSync(filePath)) throw new Error(`file ${filePath} not exists`); const form = new FormData(); form.append('file', fs.createReadStream(filePath)); try { const { data } = await axios.post('UploadFile', form, { headers: form.getHeaders(), params: { token: `${user}:${pass}`, convertAudio: 1, path, autoNumbering: true } }); console.log(data); } catch (error) { // ... } } -
@צדיק-תמים
תודה רבה!
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות