我试图找出一种方法来创建一个独特的转介链接,直接到我的网站为每个用户注册。但说实话,我真的不知道它是如何工作的肯定。我试过谷歌搜索,但找不到一个完美的答案。任何插件需要或任何方式围绕这一点?
- 用户模型,没有太多的代码我不知道这个 *
var UserSchema = new mongoose.Schema({
username: String,
password: String,
referralLink: String
})
UserSchema.plugin(passortLocalMongoose);
module.exports = mongoose.model("User", UserSchema )
用户注册
router.post("/register", function(req,res){
var newUser = new User({username: req.body.username,referral: req.body.referral});
User.register(newUser, req.body.password, function(error, user){
if(error){
console.log(error)
req.flash("signerror", error.message)
return res.redirect("/register")
}
//Do the referral link creation stuff here, don't know for sure
})
})
- 如果有办法解决这个问题,我会很高兴任何帮助 *
4条答案
按热度按时间kiz8lqtg1#
如何创建推荐链接?
让这是一个平台/语言不可知的 how-to:
_id
,它在MongoDB中是唯一的,并且是自动生成的-在这种情况下,您不必创建另一个字段)。让我们计算一下有多少人通过这个人的链接注册,假设它是referredCount
。推荐链接可以看起来像这样的例子:
/register?referrer=${_id}
,其中${_id}是用户唯一ID。/account
页面中可见-这是显而易见的步骤req.query.referrer
,查看具有此特定ID的用户的DB并增加他的referredCount
。请注意,这只是一种方法,我相信可能有许多不同的策略。
ezykj2lf2#
我建议你创建一个表/集合的转介。架构可以包含:
MongoDB将生成一个_id aka
referralId
您可以修改注册端点以接受可选参数
referralId
每当有人使用邀请函时,您只需获取创建邀请链接的人的userId。
0vvn1miw3#
从评论中回答您的问题:
您可以按照@Tomasz的建议保留推荐链接您可以使用cookie。
Cookie是用户访问网站时存储在Web浏览器中的一小段数据。当客户通过联盟推荐链接(即yoursite.com/?ref=123),应用程序应该存储两个主要的浏览器cookie,以跟踪引用的附属机构和访问。他们的名字是:
*aff_ref-此Cookie存储会员的唯一ID
*aff_ref_visit_id-此Cookie存储访问ID(每次使用任何推荐链接时,访问ID递增1,直到Cookie过期或删除)。
因此,您可以通过检查cookie来检测用户是否使用推荐链接访问网站。值得一提的是,在整个购买或转换过程中,Cookie应保留在浏览器中,以跟踪正确的会员,以便为该会员生成推荐。Cookie也应该在客户的浏览器中保留一段时间,由网站管理员指定,或者直到客户清除他们的Cookie。
ryhaxcpt4#
在用户架构中..有一个名为转介领域(要么是一个名字,号码或采取另一个用户的ID).在主网站上。创建一个按钮,将生成用户的个人推荐链接(使用JavaScript),使链接看起来像“your-domain.com/register?注册=${user._id}.然后在注册页面上...会有一个隐藏的输入栏这将自动与查询参数字段.
location.search
,这样当用户注册...推荐他们的人也会被登记...那么路线就像