在我的 angularJS 控制器中,我将 URL 附加到视图中的动态值,但得到的是未定义的值

In my angularJS controller am appending the URL with a dynamic value from the view, but getting undefined value

下面是我的观点,从这个观点来看,我正在使用附加到控制器中特定 URL 的 id 来检索相应的 Book

<div ng-controller="viewBookController">
<form ng-submit="getBook()">
    Your ID:<input type="text" ng-model="id"/><br>
    <input type="submit" value="View Book"/><br>
    Book Author : {{book.author}}<br>
    Book Title : {{book.title}}<br>
</form>
</div>

我的控制器是:

mainApp.controller("viewBookController", function($scope,$http) {
var resData = {};
$scope.book = {};
var url = "http://localhost:8080/webservice-1.0/rest/book/"+ $scope.id;
$scope.getBook = function(){
    $http.get(url)
    .then(function(response) {
        $scope.book = angular.fromJson(response.data);
    });
}
});

在上面的控制器中,我试图从视图访问 id 并附加 URL,但是 $scope.id 给出了未定义的值。

变量url必须在getBook函数中初始化为,

由于 url 变量在第一次加载应用程序时被初始化,它不会接受更新的用户输入...

$scope.getBook = function(){
    var url = "http://localhost:8080/webservice-1.0/rest/book/"+ $scope.id;
    $http.get(url)
    .then(function(response) {
        $scope.book = angular.fromJson(response.data);
    });
}