Environnement de développement :
  • Framework: SAPUI5 V1.38.39
  • IDE: SAP Web IDE

Code essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
_uploadCss: function (oCss) {
            var that = this;
            var i18n = this.getView().getModel("i18n").getResourceBundle();
            var oComunicate = this.getView().byId("ComArea");
            var sOrigin = location.origin.includes("webidetesting") ? "https://" + "gtyext.net" : location.origin;
            var sUploadUrl = sOrigin + "/sap/public/files/"; //AL11 URL
            var formData = new FormData();
            formData.append("style.css", oCss);
            $.ajax({
                url: sUploadUrl,
                method: "POST",
                data: formData,
                headers: {"x-csrf-token": that.getOwnerComponent().getModel("authorisation").getSecurityToken()},
                contentType: false,
                processData: false
            }).done(function(oRes){
                let oMessageStrip = new MessageStrip({
                        text: i18n.getText("CssFileSentToServer"),
                        customIcon: "sap-icon://complete",
                        type: "Success",
                        showIcon: true,
                        showCloseButton: true
                    });
                    oComunicate.addItem(oMessageStrip);
            }).fail(function(oErr){
                let oMessageStrip = new MessageStrip({
                        text: i18n.getText("CssFileNotSent",[oErr.status]),
                        customIcon: "sap-icon://error",
                        type: "Error",
                        showIcon: true,
                        showCloseButton: true
                    });
                    oComunicate.addItem(oMessageStrip);
            });
},
où oCss est un objet blob par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
var sCSSCode =
                `.sapMShellGlobalOuterBackground {
                    background-image: none;
                    background-color: white;
                }
                .contentBackground{
                    background-image: none;
                    background-color: white;
                }
                .integratedPage{
                    height: 350px;
                }`;
var oCss = new Blob([sCSSCode], {
    type: "text/plain;charset=utf-8"
});
La réponse de la console du navigateur (chrome) pour la requête post est 404 alors que pour une requête get c'est 403 (pour le même URL).
D'où mes 2 questions :
Pourquoi ai-je 2 réponses différentes pour le même URL ?
Comment puis-je télécharger le ficher sur le serveur ?