用javascript发布x-www-form-urlencoded

时间:2018-02-25 11:12:31

标签: javascript request httpclient

我一直在网上搜索而没有任何结果。 我想使用x-www-form-urlencoded标头向服务器发送帖子请求。 这是我的代码:

function makeFormEncoder(hash){
  return function(key) {
    return encodeURIComponent(key) + '=' + encodeURIComponent(hash[key]);
  };
}


function getAccessToken() {
// eg,
// curl -X POST -i -H "Content-Type: application/x-www-form-urlencoded" \
//     "https://api.usergrid.com/management/token" \
//     -d 'grant_type=client_credentials&client_id=XXXX&client_secret=shhhh'
//
//
// {"access_token":"BAADBEEF","expires_in":604800,"application":"uuid-here"}


  var formValues = {
        'grant_type': 'password',
        'username': appSvcs.username,
        'password': appSvcs.password
      },
      pairs = Object.keys(formValues).map(makeFormEncoder(formValues)),
      headers = {
        'Content-Type' : 'application/x-www-form-urlencoded'
      },
      url = getAppServicesUrl() + '/token',
      req = new Request(url, 'POST', headers, pairs.join('&')),
      exchange = httpClient.send(req);
}

var res = getAccessToken();
console.log(res);

当我运行上面的代码时,我看到以下错误:

  

functions.js:322未捕获的ReferenceError:未定义httpClient       at getAccessToken(functions.js:322)       在HTMLInputElement。 (functions.js:333)       在HTMLInputElement.dispatch(jquery-2.2.0.min.js:3)       在HTMLInputElement.r.handle(jquery-2.2.0.min.js:3)getAccessToken @ functions.js:322(匿名)@ functions.js:333   dispatch @jquery-2.2.0.min.js:3 r.handle @jquery-2.2.0.min.js:3

感谢您的时间!

0 个答案:

没有答案