Diweddariad: Nododd hwn darn mawr o wybodaeth am marc AD ndersson: http://blogs.office.com/2014/08/13/json-Light-support-Rest-SharePoint-API-released/. Mae hynny'n egluro llawer :).
Efallai fod y teitl swydd blog gwaethaf erioed! Anyhoo.
Fel arfer y gwnaf bopeth o fy prototeipio erbyn enghraifft O365. Mae gennyf fy achos personol fel bod ddim yn gorfod poeni am unrhyw un arall sy'n effeithio ar. Wrth fynd heibio – cofio pan alwn Cynhaliwyd o amgylch rhith peiriannau ar ein gliniaduron gyda MWSOGL – gweinydd SQL, IIS, benderfynu vs Hyper-V. VMWare? Anyhoo...
Wedi datblygu ap ddefnyddio Angular yn yr amgylchedd hwn yw, ymhlith pethau eraill, hwn:
$http.get(serverUrl)
.llwyddiant(swyddogaeth(data, statws, Penynnau, Ffurfweddu) {var getLinksResponse = data;
getLinksResponse.value.forEach(swyddogaeth(theResult) {
// ac ati a bytheirio felly
Roedd hyn yn gweithio ychydig iawn mewn dau wahanol SharePoint amgylcheddau ar-lein. Fodd bynnag,, pan oedd fy nghyd-Aelod yn ei ported i Cloudshare yr achos, ei fod yn cael HTTP 406 gwall (a oedd y tro cyntaf a gefais erioed mai un, felly... yay, am wn i). Oedd ychydig o ymchwil ac yn sylwi bod y pennawd "Derbyn" oddi ar. SharePoint ar-lein yn berffaith hapus gyda'r:
Derbyn: cais/json
Ond y lle cloudshare (sydd yn cefnogi pobl ar prem, gynhaliwyd yn weinydd rhithwir) am y clasurol "odata = amleiriog" ychwanegodd yn ogystal:
Derbyn: cais/json;odata = amleiriog
I ddatrys hynny, Ychwanegwyd y pennawd fel y cyfryw:
Ffurfweddu var = {Penynnau: {
'Derbyn': ' cais/json;odata = amleiriog '
}
};$http.get(serverUrl,Ffurfweddu)
.llwyddiant(swyddogaeth(data, statws, Penynnau, Ffurfweddu) {var getLinksResponse = data;
getLinksResponse.value.forEach(swyddogaeth(theResult) {
// ac ati a bytheirio felly
Bod cael gwared ar y 406, ond roedd hefyd wedi newid y fformat yr ymateb. Yr oedd mwy... amleiriog. (haha!) Yr oedd angen mwy o newidiadau ac yma yn y canlyniad terfynol:
Ffurfweddu var = {Penynnau: {
'Derbyn': ' cais/json;odata = amleiriog '
}
};$http.get(serverUrl,Ffurfweddu)
.llwyddiant(swyddogaeth(data, statws, Penynnau, Ffurfweddu) {var getLinksResponse = data;
getLinksResponse.d.results.forEach(swyddogaeth(theResult) {
// ac ati a bytheirio felly
Trodd hyn dim ond i 30 broblem funud i ni, Felly yr ydym yn lucked. Gobeithio rhywun canfod hyn yn ddefnyddiol.
</diwedd>