2017-07-31 15 views
1

anglejs POSTクエリをスタンドアロンJSON応答文字列に置き換えようとしています。JSON.parseまたはangular.fromJsonを使用してJSON文字列が解析されない文字列

角度のGET/POSTクエリが自動的にJSONに変換され、コードがcharmのように動作していた場合。

今、私はjson応答をコントローラにjavascript文字列変数として格納し、次にJSON.stringify()を使用して解析し、次にJSON.parse()を使用して解析しようとしています。

存在エラーはありませんが、得られたJSONオブジェクトのメンバ変数はlarge JSON is available here.オペレータ

var staticData = '{"someKey":"someValue", "masterJobs":[]}'; //very large json string. 
var resultString = JSON.stringify(staticData); 
$scope.staticTestData = JSON.parse(resultString); 
console.log($scope.staticTestData.masterJobs); // this displays 'undefined' 

コントローラ機能を使用してアクセスすることができません。

答えて

3

すでに文字列があるので、JSON.stringifyを使用する必要はありません。

ただ、次のコードを使用し

var staticData = '{"someKey":"someValue", "masterJobs":[]}'; //very large json string. 
$scope.staticTestData = JSON.parse(staticData); 
console.log($scope.staticTestData.masterJobs); 
+0

を私はすでにことを試してみました。で :searchFunction(249 SummaryReport.html)で予期しないトークン JSON内の位置1323 でJSON.parse()で :私はJSON.stringify()
にSyntaxErrorを実行せずに文字列を解析するとき、これは私が取得エラーです(angle.min.js:65)(SummaryReport.html:262) at Object.invoke(angular.min.js:41) at P.instance(angular.min.js:89) at n(angular.min.js:65) 角度(min.min.js:58) (angular.min.js):58 (angular.min.js):21 (m)$ eval(angular.min.js:145) –

+0

エラーの正確な位置を指定すると、このセクションを見つけることができます。 "" tsdescr iption ":"
表示
\ n
\ n "これには新しい文字列 '\ n'が含まれていて、文字列に実際にその中に新しい行があります(値の中には入りません)。エスケープする必要があります。詳しくはhttps://stackoverflow.com/questions/11591784/parsing-json-containing-new-line-charactersをご覧ください。 – str

+0

これが助けになりました! "xmlLogFilePath": "\\\\ cable.comcast.com \\ corp-dfs \\ CHQ-Shared \\ BSD-TCoE \\ログ\\ WEBTOP \\ TACGWC- WBTP02 \\ Parent_WEBTOP_ONECLICK_MASTER_8 \\ testng_simon_SimonMACD_OneClick " エスケープされたURLに間違いがありますか? –

関連する問題