搜尋

首頁  >  問答  >  主體

angular.js - $http.jsonp 請求報錯

angularjs 的$http.jsonp請求報錯,程式碼如下:

1

2

3

4

5

6

7

8

9

10

11

<code>data = {

    a:A,

    b:B,

    c:C,

}

$http.jsonp('url',data).success(function(res){

    console.log(res);

}).error(function(err){

    console.log(err);//控制台打印fasle

})

并报错:Uncaught SyntaxError: Invalid or Unexpected token  url(请求链接)</code>

點擊這個鏈接,拿到數據,在json在線校驗中校驗,發現B字段中有換行,但是用鏈接在瀏覽器中訪問也沒發現有換行。聯絡後台,後台說自己入庫的時候沒有換行符,我前端也拿不到數據,沒辦法處理,這種情況還有可能是啥原因,該怎麼解決?

曾经蜡笔没有小新曾经蜡笔没有小新2866 天前624

全部回覆(2)我來回復

  • 仅有的幸福

    仅有的幸福2017-05-15 17:16:04

    謝邀,沒有看到地址哦,應該是回傳的資料格式有問題。
    你可以在瀏覽器開啟https://www.w3schools.com/js/...,然後用開發者工具,查看Network面板查看HTTP資訊。

    使用XMLHttpRequest物件請求資料範例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    <code><!DOCTYPE html>

    <html lang="en" ng-app="myapp">

    <head>

        <meta charset="UTF-8">

        <title>Angular Repeat-Done Demo</title>

        <script src="https://cdn.bootcss.com/angular.js/1.6.3/angular.min.js"></script>

    </head>

    <body ng-app="myapp">

    <p ng-controller="AppCtrl">

        <h4>Users List</h4>

        <ul>

            <li ng-repeat="member in members">

                <p>

                    ID:<span>{{member.id}}</span>

                    Name: <span>{{member.login}}</span>

                </p>

            </li>

        </ul>

    </p>

    <script type="text/javascript">

        var myapp = angular.module("myapp", [])

                .controller("AppCtrl", ['$scope', function ($scope) {

                    $scope.getMembers = function () {

                        let MEMBERS_URL = `https://api.github.com/orgs/angular/members?page=1&per_page=5`;

                        let xhr = new XMLHttpRequest();

                        xhr.open("GET", MEMBERS_URL);

                        xhr.onreadystatechange = () => {

                            if (xhr.readyState == 4 && xhr.status == 200) {

                                if (xhr.responseText) {

                                    try {

                                        // 手动触发脏值监测

                                        $scope.$apply(function() {

                                            // 在转JSON对象前,对xhr.responseText进行数据格式化

                                            $scope.members = JSON.parse(xhr.responseText);

                                        });

                                    } catch (error) {

                                        throw error;

                                    }

                                }

                            }

                        };

                        xhr.send(null); // (6)

                    };

     

                    $scope.getMembers();

                }])

    </script>

    </body>

    </html></code>

    回覆
    0
  • 世界只因有你

    世界只因有你2017-05-15 17:16:04

    雷雷

    回覆
    0
  • 取消回覆