2017-01-02 68 views
0

即時通訊從api獲取json對象,在該對象中,一個字段使用base 64格式進行編碼。獲得響應後,我需要解碼base64數據,並需要以純文本顯示。 樣本數據如何將base64編碼的數據解碼爲asji in angularjs

{"id":33132,"dataFormat":"TEVOOjA="}//base64 to ascii i.e LEN:0 

期望的輸出 - LEN:0

<script> 
      var app = angular.module('myApp', []); 
      app.controller('myCtrl', function ($scope, $http) { 
       $http.get('url', { 
        headers: { 'Authorization': 'Basic a2Vybyt==' } 
       }) 
        .then(function (response) { 
        $scope.names = response.data; 
        $scope.EncodedData = names.dataFrame; 
        $scope.decodedFrame = atob(EncodedData); 
       }); 
      }); 
    </script> 
<h2>{{names.decodedFrame }}</h2> 
+0

請參閱[MDN Web API參考 - window.atob()](https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/atob)。 – georgeawg

回答

1
var string = 'Hello World!'; 

//編碼字符串

var encodedString = btoa(string); 
console.log(encodedString); // Outputs: "SGVsbG8gV29ybGQh" 

//解碼字符串

var decodedString = atob(encodedString); 
console.log(decodedString); // Outputs: "Hello World!" 

在角

HTML:

<div ng-app ng-controller="LoginController"> 
    <div>encoded jsonData.dataFormat : {{ jsonData.dataFormat }}</div> 
    <div>decoded jsonData.dataFormat : {{ decodedFrame }}</div> 
</div> 

的JavaScript:

function LoginController($scope) { 
    $scope.jsonData = { 
    "id": 33132, 
    "dataFormat": "TEVOOjA=" 
    }; 
    $scope.decodedFrame = atob($scope.jsonData.dataFormat) 
} 

的jsfiddle:https://jsfiddle.net/nikdtu/2pwauuLu/

+0

我dnt有原始文本,我只能解碼編碼文本 – Swapna

+0

@Swapna:只使用上述建議代碼的解碼部分。 encodedString =「TEVOOjA =」; var decodedString = atob(encodedString); console.log(decodedString); –

+0

謝謝。如何發送單個值$ scope.decodedFrame = atob(names.dataFrame);即時通訊使用json對象。在這一個領域是我需要解碼的數據幀 – Swapna

0

嘗試使用base64編碼器/解碼器等this之一。