עדכון: מארק AD ndersson הצביע נפלאה שכזו פרטי: http://blogs.office.com/2014/08/13/json-light-support-rest-sharepoint-api-released/. זה מסביר הרבה :).
אולי זו הכותרת הגרוע ביותר של הבלוג אי פעם! בכל אופו.
אני בדרך כלל עושה את כל שלי שטנץ נגד מופע O365. יש לי מופע אישי שלי כך לא צריך להיות מודאג להשפיע על מישהו אחר. במאמר מוסגר – זוכר מתי נתקשר נשאו סביב מכונות וירטואליות על המחשבים הניידים שלנו עם מוס – SQL Server, IIS, מחליטים vs Hyper-V. VMWare? בכל מקרה...
שפיתחתי אפליקציה באמצעות זוויתי בסביבה זו שעושה, בין היתר, זה:
$http.get(serverUrl)
.הצלחה(פונקציה(נתונים, מצב, כותרות, config) {var getLinksResponse = נתונים;
getLinksResponse.value.forEach(פונקציה(תוצאה) {
// הלאה וקצף אז
זה היה עובד בסדר גמור בסביבות שני שונות SharePoint online. עם זאת, כאשר עמיתי מועבר זה מופע Cloudshare, הוא התחיל HTTP 406 שגיאה (מי היה הפעם הראשונה שקיבלתי אי פעם את זה, אז... איזה כיף, אני מניח). עשיתי קצת מחקר ואנו הכותרת "מקבל" היה את. SharePoint online היה מרוצה.:
קבל: יישום/json
אבל המופע cloudshare (מהי SP-פרם, מתארח בשרת וירטואלי) רציתי הקלאסי "odata = מילולי" הוסיף גם כן:
קבל: יישום/json;odata = מפורט
כדי לתקן את זה, הוספנו את הכותרת ככזה:
var config = {כותרות: {
'קבל': ' יישום/json;odata = מפורט '
}
};$http.get(serverUrl,config)
.הצלחה(פונקציה(נתונים, מצב, כותרות, config) {var getLinksResponse = נתונים;
getLinksResponse.value.forEach(פונקציה(תוצאה) {
// הלאה וקצף אז
כי יש להיפטר 406, אבל זה גם שינה את הפורמט של התגובה. זה היה יותר. מפורט. (haha!) עוד שינויים נדרשו והנה התוצאה הסופית:
var config = {כותרות: {
'קבל': ' יישום/json;odata = מפורט '
}
};$http.get(serverUrl,config)
.הצלחה(פונקציה(נתונים, מצב, כותרות, config) {var getLinksResponse = נתונים;
getLinksResponse.d.results.forEach(פונקציה(תוצאה) {
// הלאה וקצף אז
. זה רק הפך 30 דקה בעיה עבורנו, אז היה לנו מזל. אני מקווה שמישהו ימצא את זה שימושי.
</קצה>