Versão atual:

Busca de DataSet Oauth não funciona

Tenho um código de busca de DataSet para ser utilizado em um Widget em uma página pública:

        var dsName = "wdgCardapioDias";
        var fields = null;
        var constraints = new Array(DatasetFactory.createConstraint("dtCardapio", "2017-06-05","2017-06-09", ConstraintType.MUST));
        var orders = new Array("dtCardapio");
        var token = { key: Cardapio.dsTokem, secret: Cardapio.dsSecret };
        var consumer = { key: 'cardapio', secret: 'cardapio' };     

        var oauth = OAuth({
            consumer: consumer,
            signature_method: 'HMAC-SHA1',
            hash_function: function(base_string, key) { return CryptoJS.HmacSHA1(base_string, key).toString(CryptoJS.enc.Base64); },
            nonce_length: 6
        });

        var request_data = {
            url: WCMAPI.serverURL+'/api/public/ecm/dataset/datasets',
            method: 'POST',
            data: { name: dsName, fields: fields, constraints: constraints, order: orders }
        };

        var ret = null;
        $.ajax({
            url: request_data.url,
            crossDomain: true,
            async: false,
            type: request_data.method,        
            data: JSON.stringify(oauth.authorize(request_data, token)),
            contentType: "application/json"
        }).done(function(data) {
            ret = data.content;
        });

Ele funciona como o vcXMLRPC, porém utilizando Oauth. Quando eu estou com um usuário logado funciona perfeitamente, porém quando estou em uma página pública ele dá o erro wcm_global_en_US.js?v=f1.6.0-EP3:3 POST /api/public/ecm/dataset/datasets 401 (Unauthorized).

O que posso fazer para utilizá-lo em uma página publica?

Versão (1):

Ver a versão formatada

Busca de DataSet Oauth não funciona

Comentário

new question