Как обновить вложенное поле пользовательского документа в Baasbox с помощью вызова веб-сервиса

0

Пожалуйста, помогите мне в обновлении вложенного поля пользовательского документа. У меня есть пользовательский документ с видимым полемByTheUser с аватаром, именем, email в качестве полей. Я хочу обновить только поле AvatarUrl, когда загружается профиль pic. Когда я пытаюсь обновить его, он переопределяет полный объект. Для справки найдите мой код обслуживания ниже.

var headers = {
                'Authorization': 'Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==',
                'contentType' : 'application/json',
                'X-BAASBOX-APPCODE' : baasboxAppCode,
                'X-BB-SESSION' :  window.localStorage.getItem("userToken")
        };
        //TODO: Change the updation format.
        //Below format is overriding the complete object.
        var data = {
                "visibleByTheUser": {
                    "avatarUrl" : updatedAvatarUrl
                },
        };
        url = serverUrl+ '/me';
        var promise = $http({
            method: "PUT",
            url : url,
            headers : headers,
            data: data
        });
        promise.then(function(data){
            console.log("success data in ProfileUpdation is:"+ JSON.stringify(data));

        });
        promise.error(function(error) {
            console.log("error in ProfileUpdation is:",JSON.stringify(error));
        });
        return promise;
Теги:
ionic-framework
baasbox

1 ответ

0
Лучший ответ

Я понял этот ответ. Вместо того, чтобы обновлять определенное поле вложенных объектов в Baasbox, это невозможно, чтобы обновить все поле с вложенными объектами в нем.

Вот код, который я использую для этого

avatrUrlUpdation : function(visibleByTheUserforUpdation){
        /*console.log("entered into avatarUrlUpdation");*/
        var headers = {
                'Authorization': 'Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==',
                'contentType' : 'application/json',
                'X-BAASBOX-APPCODE' : baasboxAppCode,
                'X-BB-SESSION' :  window.localStorage.getItem("userToken")
        };
        //TODO: Change the updation format.
        //Below format is overriding the complete object.
        var data = {
                "visibleByTheUser" : visibleByTheUserforUpdation
        };
        url = serverUrl+ '/me';
        var promise = $http({
            method: "PUT",
            url : url,
            headers : headers,
            data: data
        });
        promise.then(function(data){
            console.log(data);
        });
        promise.error(function(error) {
            console.log("error in ProfileUpdation is:",JSON.stringify(error));
        });
        return promise;
    }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню