csMgmtApp.controller('launchedController', ['$scope', '$http', '$document', '$resource', function ($scope, $http, $document, $resource) {
$scope.clientResult = {};
$scope.data = {};
$document.ready(function() {
var query_string = {};
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0; i < vars.length; i++) {
var pair = vars[i].split("=");
query_string[pair[0]] = pair[1];
}
if (typeof(query_string.access_token) != "undefined") {
var result = {};
result.state = query_string.state;
result.scope = query_string.scope;
result.access_token = query_string.access_token;
result.expires_in = query_string.expires_in;
result.resource_server_base_uri = query_string.resource_server_base_uri;
result.token_type = query_string.token_type;
}
$scope.clientResult = result;
});
console.log($scope.clientResult);
$scope.startSessionPayload = {
'stationPhoneNumber': '5555555555',
'inactivityTimeout': '0',
'inactivityForceLogout': 'false'
};
$http({
'url': $scope.clientResult.resource_server_base_uri + 'services/v6.0/agent-sessions',
'method': 'POST',
'headers':{'Authorization': 'bearer ' + $scope.clientResult.access_token,'content-Type': 'application/json'},
'data': JSON.stringify($scope.startSessionPayload)
}).success(function(data, status, headers, config) {
$scope.data = data;
console.log('data', $scope.data)
}).error(function(data, status, headers, config) {
$scope.status = status;
});
}]);
上面的代碼給我404當我嘗試TE $ HTTP 「POST」。
當我console.log($ scope.clientResult.resource_server_base_uri),我得到:「https%3a%2f%2fapi-c7.incontact.com%2finContactAPI%2f」。
但是,我得到一個404,當我看的開發人員工具,我看到它試圖張貼到:"http://localhost:63342/Call_cntr/client/https%3a%2f%2fapi-c7.incontact.com%2finContactAPI%2fservices/v6.0/agent-sessions"
我開始認爲這是失敗,因爲「://本地主機... 「正在被」前置「到base_uri ......不知道爲什麼會發生這種情況。我感覺我提供了inContact API文檔中提到的所有內容。也許這是從AJAX到$ http的角度轉換?
任何幫助,非常感謝,我堅持..
一旦你有一個API認證令牌,使用此令牌,而其憑證你用得到令牌的代理創建代理會議。這是通過請求https://api- {集羣} .incontact.com/inContactAPI/services/v6.0/agent-sessions方法,並提供將傳遞給代理的「工作站ID」或電話號碼來完成的。
每文檔:https://developer.incontact.com/API/AgentAPI#!/Sessions/startSession
出於測試目的,你可以硬編碼的網址,以確保它指向inContact服務器,而不是使用'$ scope.clientResult.resource_server_base_uri'(這似乎不正確地指向你的本地主機)? –
你會在瀏覽器中輸入'http%3a%2f%2stackoverflow.com /'還是'http:// stackoverflow.com /'? – zeroflagL
你應該發佈什麼正確的URL? –