פורסם 2009 באוקטובר 1016 שנים הייאני עובד על אפליקצית Silverlight שממנה משתמש מעלה פרטים טקסטואלים שלו לשרת + תמונת Jpeg.כרגע מימשתי את העלאת הנתונים (בלי התמונה עד עכשיו) דרך PHP Web Service שיושב על השרת שלי ומקבל את הנתונים הטקסטואלים ושומר אותם ל-DB.בשביל להעלות את התמונה עלו לי כמה רעיונות אפשריים - 1. לשלוח את התמונה כמערך של byte[] שיתווסף לאוסף הנתונים שה- WebService מקבל. משם התמונה תשמר כקובץ Jpeg על השרת.2. לשלוח את התמונה בתוך POST לשירות REST פשוט ונפרד על השרת.האופציה הראשונה עדיפה עלי, כי אני לא אצטרך לדאוג לבעיות בשמירה של התמונה ושאר הנתונים בנפרד, לבעיות בתזמון וכו...העניין הוא שעד עכשיו ניסיתי את האופציה הראשונה, נראה ש-Silverlight שולח את הנתונים כראוי. אבל בצד ה- PHP אני לא מצליח ממש לראות את מערך ה- Bytes - כשאני מדפיס אותו כל מה שאני מקבל זה את הג'יבריש הזה - ״א מה גם שנורא קצר - ממש לא הגיוני ביחס לגודל של הקובץ - אני רואה שה- Silverlight שולח לו מה שנראה כמו String ארוך מאוד של כל מני אותיות וסימנים שמתחיל ככה/9j/4AAQSkZJRgABAQEAYABgAAD/4QBmRXhpZgAASUkqAAgAלמישהו יש מושג למה ב- PHP אני רואה את זה ככה? ועוד ככה קצר? זה תקין? ב- WSDL שלי זה השדה הזה מוגדר כך - <xsd:element name="picture" type="xsd:base64Binary" />אשמח לקבל חוות דעת ועזרה ממישהו שיש לו ניסיון או רעיון בנושא.תודה!
פורסם 2009 באוקטובר 1016 שנים אל תיהיה ערבי, תעבוד עם MIME.אם אתה עובד בצורה שלך, אתה צריך להפריד את הנתונים של כל קובץ אל מערך BYTE נפרד, מה שלא כלכך פשוט או יעיל לממש.תיצור הודעת MIME, שמכילה את כל התוכן שאתה רוצה(אתה מפריד את התוכן בתוך ההודעה לדוגמא: Content-Type: text/plain)כל התוכן שאתה רוצה עובר כASCII בתוך ההודעה(כמו שזה עובר במיילים).http://msdn.microsoft.com/en-us/library/system.net.mime.aspx
פורסם 2009 באוקטובר 1116 שנים מחבר אני הגעתי למצב של הפרדה של הקובץ לתוך מערך של byte. זה לא היה מסובך.. יכול להיות שאתה מתכוון למשהו אחר? כי אם זה כל מה שהייתי צריך להגיע אליו, אז אני מעדיף אותו מאשר לתחיל להתעסק עם עוד פרוטוקול.בקיצור אני מסוגל לשלוח מערך של byte[] שמכיל בתוכו את כל הנתונים של התמונה. האם זה אמור לעבוד לי בדרך הנוכחית שאותה אני מנסה להפעיל?
פורסם 2009 באוקטובר 1116 שנים כן אם אתה שומר את המערך כקובץ זה אמור לעבוד.MIME זה לא "עוד" פרוטוקול זה הפרוטוקול הכי פשוט לעביר בו תכנים בצורה הזאתי.אתה מרכיב הודעת MIME, וכל דבר שתומך בMIME יידע לקרוא אותה.
פורסם 2009 באוקטובר 1216 שנים אתה יכול לתקוע את כל התוכן למערך יחיד של BYTE, אתה גם יכול לשלוח גם אחר פר קובץ, בשונה מMIME שמיושם בכל דבר בעולם בערך, אתה תצתרך לכתוב קוד שיידע לשחזר את המערך לקובץ בינארי בצד השני.סתם בלאגן מיותר כשיש לך תקן שתומך בהעברת הודעות טקסט + קבצים כAttachment, מכיל בתוכו CRC ודברים נוספים, תומך בהצפנה(SMIME), ומוכר ע"י כל העולם.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.