@Nanif צריך מונגו קליינט לא מונגו DB, וכבר יש לך מונגו קליינט.
נראה שהרבה התלוננו על השגיאה שקיבלת, יש על זה בגיטהאב הרבה תלונות
https://github.com/metabase/metabase/issues/6678
https://github.com/metabase/metabase/issues/9867
נסה את הפתרונות שם.
יוסף בן שמעון
-
האם צריך להתקין mongoDB לוקלי כדי להתחבר לדטבייס שרץ ב mongodb atlas ? -
סדר התשובות בלולאה אסינכרונית- אתה יכול להתפטר מהשורות המיותרות האלה
if err != nil { }
אם בהשמה תכתוב כך:
resp, _ := http.DefaultClient.Do(req)
במקום לכתוב err כותבים קו תחתון וזה פוטר אותך מלהשתמש במשתנה הזה.
- יש לך טעות בלולאה, אתה רצית 2 קריאות אבל אתה בעצם מריץ לולאה של 3 קריאות כי a מתחיל מאפס ונגמר ב 3, הסיבה שאתה לא רואה 3 תוצאות כנראה בגלל שהפונקציה main מתה לפני שהקריאה השלישית מתסיימת. תוסיף בסוף הפונקציה השהייה כזו:
time.Sleep(10 * time.Second)
ותבדוק אם זה משנה את התמונה
לגופה של שאלה, לא התעמקתי לגמרי בקוד שלך, אבל זה נשמע לי הגיוני לגמרי שקריאה שניה מגיעה לפני קריאה ראשונה, זה תלוי בהרבה פרמטרים, המשתנה של הזמן לא מעיד על שום דבר כי שני המשתנים מאותחלים כמעט במקביל כי שתי הפונקציות נקראות אחת אחרי השניה ברצף וזה מאותחל מיד עם אתחול הפונקציה
-
סשנים בjs@chagold אם אני לא טועה sessionStorage שומר לפי הטאב הנוכחי, אם אני טועה, אז אתה יכול לעשות פרמטר ב URL ששומר את הסשן הנוכחי בטאב הנוכחי, ותוכל דרך הקוד לקבל את הפרמטר הזה
עריכה:
לפי מה שכתוב כאן:
https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage
טאב חדש זה סשן חדש, אז לכאורה זה ממש מה שאתה מחפש -
יצירת תור לבקשות API@nigun בנוד אפשר לעשות את זה מסודר עם אירועים, תודיע אם זה רלוונטי להוסיף פרטים
-
כדי שהשרת יזהה לקוח באמצעות $_SERVER['HTTP_HOST']בכלל דומיין זה לא דבר חסוי, זה רשום בשרתי DNS ציבוריים וכל הרוצה מקבל מידע, אפשר לקבל בקלות את הרשימה של הדומיינים שמפנים לשרת שלך, אז אי אפשר לאבטח מידע בצורה הזו (אא"כ אתה מדבר על רשת אירגונית פנימית עם שרת DNS עצמאי...)
-
react vs angularמסכים עם @avr416 בקשר ליתרונות של אנגולר 2 וטייפסקריפט, אבל העוצמה של אנגולר 2 היא גם חסרון, אם אני צריך דף פשוט עם כמה בינדינגים וכמה ngFor זה ממש בל תשחית לרתום את המרכבה של אנגולר 2 בשביל זה, חוץ מהמורכבות של הסביבת פיתוח, כל טעינת דף באנגולר 2 דורשת טעינת סקריפט כבד ואיתחול של מאות מחלקות, וזה יכול לקחת כמה שניות שאין להם הצדקה, לעומת זה באנגולר 1 זה פשוט לשים תגית סקריפט וכמה שורות קוד בודדות, אפשר אפילו בפידל לעשות אנגולר 1, בשביל דוגמת קוד נורמלית באנגולר 2 צריך לטעון plnkr או stackblitz כבדים. אז כדי להצדיק שימוש באנגולר 2 צריך שזה יהיה אפליקציה ממש מורכבת, אז אתה נהנה מהסדר והשכלול של אנגולר 2. כנלע"ד
ואגב, מטריאל עובד מצוין גם באנגולר 1, יותר פשוט ואם אני לא טועה יש לו יותר מרכיבים מאנגולר 2 -
תתי הפניות ב express@חוקר אמר בתתי הפניות ב express:
@אהרן אמר בתתי הפניות ב express:
כי אתה לא רוצה לסיים את ההתקשרות אם המערכת פתוחה.
אכן
התכוונתי לשאול בעיקר החלק השני, שלכאורה החלק שלelse next()
מיותר
כשאתה קורא ל
res.end()
אתה לא עוצר את הריצה של הפונקציה, אתה מסיים את התקשורת עם הקליינט, הפונקציה עצמה ממשיכה לרוץ, זה שני דברים שונים.
תנסה לדוגמא כך:res.end(); console.log("res is ended");
ותראה את ההדפסה בקונסול, אפשר לא רק להדפיס אלא לעשות כל דבר אחר, להתחבר למסד נתונים או למערכת קבצים או כל מה שתרצה, רק לא לשלוח עוד מידע לקליינט, לדוגמא אם תנסה כך:
res.end() res.write("hello")
תקבל שגיאה שהתקשורת כבר נסגרה ואז הפונקציה תכשל בגלל השגיאה.
אז אם לא תשים את זה בתוך else מה שיקרה שהפונקציה תמשיך ותקרא לשאר הנתיבים גם אם התקשורת כבר נסגרה, וזה יפלוט שגיאה.
-
authentication ב - express@מנצפך אמר בauthentication ב - express:
לפרספורט אין מערכת סשנים עצמית, הוא צריך מערכת שדואגת לשמור את הסשנים, ובשלב האימות צריך לשלוף את מזהה הסשן, אתה צריך גם express-session וגם passport
-
שאלות של מתחיל - מקצועי ב nodejs@חוקר זה לא קשור לאיך נוד קורא את הדף, זה פשוט משתנה שמעולם לא אותחל אז הוא undefind, אתה יכול לכתוב כך:
var total = (campaign_stats && campaign_stats.data.total);
זה יבדוק אם המשתנה קיים ואם לא הוא יחזיר מיד את הundifind ולא יכשיל את הפונקציה
-
שאלות של מתחיל - מקצועי ב nodejs@חוקר אמר בשאלות של מתחיל - מקצועי ב nodejs:
@יוסף-בן-שמעון
תודה.
השאלה היא האם שייך כן לארוז את זה כפונקציה, כי אני רוצה לקבל json ולטפל אותו לנתח נתונים לתוך משתנים ועוד.
אני צריך אפשרות לקבל בסגנון שכתבתי בהתחלה.
יש מצב?
תודהאתה יכול במקום לכתוב
res.text()
להחליף ל
res.json()
ואז בפונקציה השניה אתה מקבל את הbody כ JSON
אגב יש מודול יותר פופולרי לבקשות משרתים מרוחקים, קוראים לו request, אתה יכול להתקין כךnpm i request
ולהשתמש כך:
var request = require('request'); app.get('/page', (req, res)=>{ request('https://github.com/', (err, response, body)=>{ body = JSON.parse(body); if(body.status == "ok") res.send("ok") else res.send("no") }) })
-
שאלות של מתחיל - מקצועי ב nodejs@חוקר אמר בשאלות של מתחיל - מקצועי ב nodejs:
נוד היא סינכרונית, כלומר כשאתה שולח בקשה לשרת מרוחק המעבד ממתין לתשובה, בנתיים הקומפיילר לא מחכה אלא ממשיך לשורה הבאה, ועד שהתשובה מגיעה הוא כבר אוחז כמה שורות אח"כ ולכן הוא לא טוען את התשובה למשתנה.
הפתרון היא לעבוד עם callback או עם promise, לדוגמא במודול שאתה משתמש יש פרומיס מובנה, תראה כאן:
https://www.npmjs.com/package/node-fetch#plain-text-or-htmlfetch('https://github.com/') .then(res => res.text()) .then(body => console.log(body));
then הראשון ממיר את התשובה מאובייקט לטקסט, ומחזיר אותו ל then השני, ובשני אתה יכול לשלוח את התשובה לאיפה שאתה רוצה. משהו כזה:
app.get('/page', (req, res)=>{ fetch('https://github.com/') .then(response => response.text()) .then(body =>{ if (body = "ok"){ res.end(body); } else{ res.end("no"); } }); })```
-
שאלות של מתחיל - מקצועי ב nodejsהוספה קטנה לשאלה ג'
א. הדרך המקובלת היא כמו שאמר דוד, לכתוב את הפונקציה בקובץ כך://child-script.js function globalFunc(){ console.log("A") } module.exports = globalFunc;
ולייבא אותו כך
//main-script.js var globalFunc = require('./child-script.js') globalFunc()
אפשר גם ליצור משתנים גלובליים ממש, אם אתה מאתחל את המשתנה בלי להצהיר עליו עם var או let או function וכדומה, לדוגמא:
globalFunc = function(){ console.log("A") } globalVar = "globalVar"
ואז אתה עושה ממש כמו include בקובץ הראשי או בכל קובץ שהוא ממרחבי האפליקציה:
require('./child-script.js') globalFunc() console.log(globalVar )
והמשתנים האלה זמינים לך בכל האפליקציה.
אבל זכור לי שלא ממליצים לעבוד כך, כי זה יכול לגרום התנגשות בין משתנים בלי שימת לב, וגם אם אתה עובד עם IDE נורמלי כמו vscode הוא לא יודע לזהות את המשתנים ולא יתן לך הצעות להשלמה אוטומטית. -
המרת נתונים (php) כדי להכניס לpostgreSql@chagold כתב בהמרת נתונים (php) כדי להכניס לpostgreSql:
אבל האמת, אני צריך לעבור קורס בנושא הזרקות.
לא חייב, זה יכול לתרום אבל זה לא הכרחי, מה שחשוב זה להקפיד לא לסמוך על המשתמש בשום דבר, לא לקבל ממנו שום קלט בלי לטהר אותו לפני כן, אם אתה בונה שאילתה אל תשרשר את הקלט לתוך השאילתה, אלא תשתמש בכלים של טיהור וחיטוי
-
עזרה בלולאה על מערך בג'אווה סקריפט@hp079 ניסחת את השאלה כאחד שנמצא במעמקי הסיטואציה, כדי שגם אחרים יוכלו להבין את השאלה, כדאי שתפרט מה מבנה הנתונים של variableData, מה זה data, מה אתה מנסה לעשות בדיוק, מה אתה מצליח ומה אתה נכשל
-
שגיאת cors (למרות אישור בצד שרת) רק בשיטת post@chagold נראה לי שאתה צריך להוסיף גם אישור להידרים
res.header('Access-Control-Allow-Headers', '*');
-
טופס - HTML - הצגת ערך בתיבה שלא יהיה ניתן לשינוי@ממ אני מציע שתעשו פרוייקט נקי כאן https://stackblitz.com/
ותנסו לשחזר את הבעיה, כדי שיהיה אפשר להבין מה הבעיה בדיוק -
טופס - HTML - הצגת ערך בתיבה שלא יהיה ניתן לשינוי@ממ שמתי את הקוד שלכם כאן
https://stackblitz.com/edit/angular-ivy-hbqs3l?file=src%2Fapp%2Fapp.component.html,src%2Fapp%2Fapp.component.ts,src%2Fapp%2Fapp.module.ts
וזה עובד טוב
תנסו לראות אם יש הבדל בין מה שעשיתי לבין הקוד שלכם
או תבדקו אם יש לכם שגיאות בקונסול -
העלאת קובץ ב javascript ע"י input מסוג file@pancake אי אפשר להגיע לנתיב האמיתי, הדפדפנים לא מאפשרים לך לחשוף פרטים על מערכת הקבצים של המשתמש
אולי תפרט מה בדיוק אתה צריך לעשות, מה הצורך שלך בנתיב האמיתי? -
התקנת אסטריסק על אובנטו במחשב אישי עם WSL@מוטי-מן
בקובץ
/etc/asterisk/sip.conf
תוסיף את השורות הבאות:[microsip] type=friend host=dynamic defaultuser=microsip secret=123 context=from-trunks allow=speex32
ובקובץ /etc/asterisk/extensions.conf
תוסיף[from-trunks] exten = 1000,1,Answer() same => n,Playback(hello-world) same => n,Playback(vm-goodbye)
או אם אתה עובד עם PHP תגדיר PHPAGI
עריכה: לא בשלב הזהאחר כך תריץ בטרמינל של לינוקס asterisk start
ואחר כך asterisk -rvvvvvvvvvvvvvvvv
תתקין microsip על וינדוס
תגדיר לו חשבון כך:
(סיסמה 123)תחייג למספר 1000 מהמיקרוסיפ, אתה אמור לשמוע hello world, תקווה שזה יעבוד
-
האם יש אפשרות לתכנת ישירות בענן@Y-Excel-Access יש דוקר עם vscode
אתה ממקם את זה על השרת, מתחבר לכתובת של המכונה, ומקבל ממשק מלא עם דיבאגרים ותוספים ושאר ירקות, וככה אתה יכול לעבוד מכל מקום עם מחשב נייד
אני משתמש בזה די הרבה, זה מאד נח@Y-Excel-Access כתב בהאם יש אפשרות לתכנת ישירות בענן:
ויש תקשורת ביניהם (שאפשר לגשת למסד נתונים ולצד לקוח מהקוד)
בשביל תקשורת למסד אתה מתקין עוד קונטיינר עם המסד ומתקשר ביניהם