仅将API URL限制为Android应用程序

时间:2016-02-21 09:05:38

标签: c# android api authorization generic-handler

我在服务器端用C#创建了一个Android应用程序。在this教程之后,我使用的是Json Web服务。一切都运行良好,但唯一的问题是如果有人点击www.mydomain.com/Handler.ashx?ANDROID,那么在服务器端编写的所有方法都将作为文本文件下载,并且代码可以轻松读取。

我想要做的是服务器只有在我的Android应用程序发出请求时才会响应。如果有人(黑客/黑客)点击了网址,那么他就无法下载代码,应该被重定向到某个特定页面,禁止未经授权的访问。

有人可以帮我吗?如果这个问题不明确,请告诉我。

1 个答案:

答案 0 :(得分:1)

你可以做的是从你的Android应用程序传递一个键进行检查。

我不知道C#,但在PHP中它可以是这样的 -

在C#文件中,靠近文件顶部的位置,检查使用post方法发送的键值。如果没有密钥传递或错误密钥传递,则重定向到其他页面。

$required_key = "Udsd728392jsakk22";

if(($_POST['key'] == null) || ($_POST['key'] != $required_key)){

//redirect to some other page
header("Location: www.myexampledomain.com/error.php");

}

从您的Android应用中,当您向URL发送请求时,请使用密钥发送。