When using a function as AppLinks argument for dynamic pages - it gets overwritten so all subsequent page responses have same meta tags.
router.get('/articles/:articleId',
AppLinks(function(req) {
return [{
platform: "ios",
url: "myapp://articles/" + req.params.articleId,
app_name: 'My App'
}];
}),
function(req, res, next) {
res.render('article');
});