1

URL-адрес запроса на отправку следует обновить в следующем формате.Отправка запроса на отправку в Angular 1.x через завод

https://www.example.com/api/one-push?type=json&query=push&title=____&url=____&tag=___

<form ng-submit="submitUrl()"> 
<input type="text" class="form-control block" ng-model="url.title" placeholder="title"> 
    <input type="text" class="form-control block" ng-model="url.urlString" placeholder="url"> 
    <input type="text" class="form-control block" ng-model="url.tag" placeholder="tag"> 
    <button>Add</button> 
</form> 

var app = angular.module('app', []) 
.controller('searchController', ['$scope', '$http','searchService', function($scope, $http,searchService) { 
$scope.submitUrl = function() { 
    $scope.url = {}; 
     searchService.updateUrl($scope.url).success(function(data) { 
     $scope.url = data; 
     }) 
    } 
    }]); 

app.factory('searchService',function($http) { 
    var url = " https://www.example.com/api/one-push?"; 
    var Info = {}; 
    Info.updateUrl = function(url) { 
    return $http.post(url, { 
      type: "json", 
      url: url.title, 
      urlString: url.urlString, 
      tag: url.tag 
    }); 
    } 
    return Info; 
}); 

ответ

0

Подпись $ метода http.post является post(url, data, [config])

Здесь конфигурации является необязательным

Как вы хотите передать данные в виде строки запроса по запросу после, так что вы должны установить params свойство объекта конфигурации.

Фабрика:

app.factory('searchService',function($http) { 
    var url = " https://www.example.com/api/one-push"; 
    var Info = {}; 
    Info.updateUrl = function(url, data) { 
     var _data = data || {}; 

     return $http.post(url, _data, { 
      responseType: "json", 

      // Pass the data you want to pass as query params on request 
      params: { 
       type: "json", 
       url: _data.urlString, 
       query: 'push', 
       title: _data.title, 
       tag: _data.tag 
      } 
     }); 
    } 
    return Info; 
}); 
+0

Спасибо за ответ. Другая поправка заменить URL с _DATA и работал Params: { типа: "JSON", URL: _data.urlString, запрос: 'толчок', название: _data.title, тег: _data.tag } – rebello

0

Вы можете использовать "Params" для достижения этой цели следующим образом.

app.factory('searchService',function($http) { 
    var url = " https://www.example.com/api/one-push?"; 
    var Info = {}; 
    Info.updateUrl = function(url) { 
    return $http.post(url, { 
      type: "json", 
      params: {'type':'json','query':'push','title':title,'url':url,'tag':tag} 
    }); 
    } 
    return Info; 
}); 
Смежные вопросы