Yelp API y AngularJS

Estoy tratando de llamar a la API de Yelp usando AngularJS, pero tengo problemas. Sigo recibiendo una solicitud incorrecta de 400 y no sé por qué.

Documentación de la API de Yelp:

http://www.yelp.com/developers/documentation/v2/authentication http://www.yelp.com/developers/documentation/v2/search_api

Página que contiene las claves generadas por la API de Yelp:

http://gyazo.com/fa918329eb0cde18a5db242d1d0b0b0e

Este es el fragmento de mi código haciendo la llamada:

function randomString(length, chars) {
var result = '';
for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
return result;
}

app.factory("MyYelpAPI", function($http) {
return {
    "retrieveYelp": function(name, callback) {
        $http.jsonp("http://api.yelp.com/v2/search?term=food&location=San+Francisco&callback=JSON_CALLBACK",
            {
                params: {
                    oauth_consumer_key: /* Consumer Key */,
                    oauth_token: /* Token */,
                    oauth_signature_method: "hmac-sha1",
                    oauth_signature: /* Token Secret */,
                    oauth_timestamp: new Date().getTime(),
                    oauth_nonce: randomString(32, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')
                }
            }
        ).success(callback);
    }
}
});

Respuestas a la pregunta(1)

Su respuesta a la pregunta