recherche

Maison  >  Questions et réponses  >  le corps du texte

angular.js - angular如何在url里传递参数?

在做一个小爬虫,先爬了一个列表,再根据每一个href去爬文章

我在href里将新的url参数传递

<ion-item ng-repeat="item in news" class="item item-icon-left">
     <a href="#/app/newslist/{{item.href}}" >

在ionic的路由里是这样写的:

url: "/newslist/:url",

我希望将url这个参数传给node写的server,
ionic的controller是这样传参数的

.controller('SingleNewsCtrl', function ($scope,$stateParams,$http) {
    $http.get('http://localhost:3000/newslist/' + $stateParams.url)
        .success(function(data){
            $scope.title = data.title;
            $scope.date = data.date;

在server里,希望接受url参数,再去爬新的页面

app.get('/newslist/:url', function (req, res) {
var url = req.params.url;

superagent.get(url)
    .end(function (err, data) {
        if (err) console.log(err);

但是url总是接受不到,不知道angular里的传参哪里写错了,希望大家指点下~~

黄舟黄舟2743 Il y a quelques jours588

répondre à tous(1)je répondrai

  • 大家讲道理

    大家讲道理2017-05-15 16:53:32

    Je pense que votre instruction de routage ionique et votre traitement de nœud ne sont pas corrects. ionic utilise ui-router Si votre paramètre est un chemin, vous pouvez l'utiliser directement :

    javascripturl: "/newslist/:url",
    

    est incorrect. Le type de chemin définissant l'itinéraire doit être le suivant :

    javascripturl: "/newslist/{path:.*}"
    

    ou :

    javascripturl: "/newslist/*path"
    

    De même, dans le routeur du nœud, la déclaration acceptant la demande ne doit pas être correcte. Habituellement : le nom ne prend pas en charge les paramètres de type d'URL. Vous devez vérifier le document du composant du routeur que vous utilisez et le résoudre vous-même.

    répondre
    0
  • Annulerrépondre