Ich versuche, Daten von dem Server zu erhalten:OData Modell abrufen keine Daten vom Server
$this.oModel = new sap.ui.model.odata.v2.ODataModel("https://myserver.com/sap/opu/odata/sap/zumu_contact_person_srv",{
user: 'TEST',
password: '12345678',
headers: {
"Accept": "application/json",
"Accept-Language": "ru-RU",
"DataServiceVersion": "2.0",
"MaxDataServiceVersion": "2.0",
"X-CSRF-Token": "Fetch"
}
});
$this.getView().setModel($this.oModel, "ContactPerson");
console.log($this.oModel);
In Ansicht Ich habe Tabelle:
<Table id="Listing" class="tableList" mode="MultiSelect" items="{path: 'ContactPerson>/contactsList'}">
<columns>
<Column id="vendorNum" minScreenWidth="Tablet" >
<Text text="{i18n>vendorNum}"/>
</Column>
<Column id="recipientType" minScreenWidth="Tablet" >
<Text text="{i18n>recipientType}"/>
</Column>
<Column id="supplierName" minScreenWidth="Tablet" >
<Text text="{i18n>supplierName}"/>
</Column>
</columns>
<items>
<ColumnListItem>
<cells>
<Input value="{ContactPerson>Parnr}" editable="false" />
</cells>
<cells>
<Input value="{ContactPerson>Ebonu}" editable="false" />
</cells>
<cells>
<Input value="{ContactPerson>NameFirst}" editable="false" />
</cells>
</ColumnListItem>
</items>
</Table>
Warum Daten kommen nicht mit dem Server ? Objekt $this.oModel.oData
- ist leer. Was könnte das Problem sein? Oder mache ich etwas falsch?
Können Sie überprüfen, ob eine Anfrage gestellt wurde und wenn ja, welches Ergebnis wird zurückgegeben? – hirse
@hirse, Er sendet drei Anfragen: '/ zumu_contact_person_srv/$ metadata','/zumu_contact_person_srv/','/zumu_contact_person_srv/$ batch'. $ metadata - 200 ok, zumu_contact_person_srv - 20 ok (Anfrage mit Header 'x-csrf-token: Fetch'), $ batch - 403 Verboten. Er sagt: 'CSRF-Token-Validierung fehlgeschlagen'. Ich verstehe nicht warum? – sanu0074
Offenbar sind Sie nicht mit dem richtigen Benutzer angemeldet oder Ihr Benutzer verfügt nicht über ausreichende Berechtigungen. – hirse