我的网站无需登录。以及用户在调用ASP.NET MVC Controller Action Methods时所采取的行动。任何其他公司都可以在这个时候调用这些端点,并以这种方式使用我的API。我想确保只有在我网站上的用户才能访问这些API。如何将访问者限制为访问我网站的访问者
我该如何做到这一点?
添加说明:
说我的网站是consoto.com。我希望我的方法仅在最终用户位于consoto.com上时才能使用。现在,如果另一家公司或黑客建立一个网站hacra.com并在他们的javascript中调用我的方法,我希望它失败,因为他们的用户不在consoto.com上,而是在hackLand.com上。
现在很多网站都提供付费官方API访问其核心功能。如果他们没有实现这样的机制,其他人可以选择调用实际网站使用的方法,而不是通过付费API。什么会阻止hackland.com使用consoto.com使用的方法,并最终不支付该服务费用?
你是什么意思“任何其他公司”和什么API?但你可以为你的网站设置一个cookie或会话并检查cookie或会话,因为你的网站是唯一可以让你完成交易的会话,但我不认为你的网站仅限于公司 – davethecoder 2012-02-13 00:11:56
如果你不要求客户登录(或以某种方式验证自己(即秘密令牌,授权cookie等),那么您如何可靠地区分“网站上的用户”和“其他公司”? – 2012-02-13 01:00:50
@ minus4我刚刚添加了一个更好的解释。谢谢! – Barka 2012-02-13 19:17:50