mirror of
https://github.com/grpc/grpc-node.git
synced 2025-12-08 18:23:54 +00:00
Merge pull request #1515 from murgatroid99/node_auth_uri_parameter
Updated the getGoogleAuthDelegate function to use credential.getRequestMetadata
This commit is contained in:
commit
acf317365b
7
index.js
7
index.js
@ -100,22 +100,23 @@ function load(filename, format) {
|
||||
function getGoogleAuthDelegate(credential) {
|
||||
/**
|
||||
* Update a metadata object with authentication information.
|
||||
* @param {string} authURI The uri to authenticate to
|
||||
* @param {Object} metadata Metadata object
|
||||
* @param {function(Error, Object)} callback
|
||||
*/
|
||||
return function updateMetadata(metadata, callback) {
|
||||
return function updateMetadata(authURI, metadata, callback) {
|
||||
metadata = _.clone(metadata);
|
||||
if (metadata.Authorization) {
|
||||
metadata.Authorization = _.clone(metadata.Authorization);
|
||||
} else {
|
||||
metadata.Authorization = [];
|
||||
}
|
||||
credential.getAccessToken(function(err, token) {
|
||||
credential.getRequestMetadata(authURI, function(err, header) {
|
||||
if (err) {
|
||||
callback(err);
|
||||
return;
|
||||
}
|
||||
metadata.Authorization.push('Bearer ' + token);
|
||||
metadata.Authorization.push(header.Authorization);
|
||||
callback(null, metadata);
|
||||
});
|
||||
};
|
||||
|
||||
@ -485,27 +485,28 @@ var requester_makers = {
|
||||
* requestSerialize: function to serialize request objects
|
||||
* responseDeserialize: function to deserialize response objects
|
||||
* @param {Object} methods An object mapping method names to method attributes
|
||||
* @param {string} serviceName The name of the service
|
||||
* @return {function(string, Object)} New client constructor
|
||||
*/
|
||||
function makeClientConstructor(methods) {
|
||||
function makeClientConstructor(methods, serviceName) {
|
||||
/**
|
||||
* Create a client with the given methods
|
||||
* @constructor
|
||||
* @param {string} address The address of the server to connect to
|
||||
* @param {Object} options Options to pass to the underlying channel
|
||||
* @param {function(Object, function)=} updateMetadata function to update the
|
||||
* metadata for each request
|
||||
* @param {function(string, Object, function)=} updateMetadata function to
|
||||
* update the metadata for each request
|
||||
*/
|
||||
function Client(address, options, updateMetadata) {
|
||||
if (updateMetadata) {
|
||||
this.updateMetadata = updateMetadata;
|
||||
} else {
|
||||
this.updateMetadata = function(metadata, callback) {
|
||||
if (!updateMetadata) {
|
||||
updateMetadata = function(uri, metadata, callback) {
|
||||
callback(null, metadata);
|
||||
};
|
||||
}
|
||||
this.server_address = address;
|
||||
this.server_address = address.replace(/\/$/, '');
|
||||
this.channel = new grpc.Channel(address, options);
|
||||
this.updateMetadata = _.partial(updateMetadata,
|
||||
this.server_address + '/' + serviceName);
|
||||
}
|
||||
|
||||
_.each(methods, function(attrs, name) {
|
||||
@ -541,7 +542,7 @@ function makeClientConstructor(methods) {
|
||||
* @return {function(string, Object)} New client constructor
|
||||
*/
|
||||
function makeProtobufClientConstructor(service) {
|
||||
var method_attrs = common.getProtobufServiceAttrs(service);
|
||||
var method_attrs = common.getProtobufServiceAttrs(service, service.name);
|
||||
var Client = makeClientConstructor(method_attrs);
|
||||
Client.service = service;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user