using Microsoft.AspNetCore.Mvc;
using System;
namespace Feed.Controllers
{
[ApiController]
public class AaaController : Controller
{
[HttpGet]
[Route("{url}")]
public void GetBbb(string url)//短链接跳转
{
if (url == "1")
{
Response.Redirect("https://www.baidu.com", false);
}
else if (url == "2")
{
Response.Redirect("https://www.google.com", false);
}
}
public static string GetShortUrl(string url)//短链接生成
{
string key = DateTime.Now.ToString();
string[] chars = new string[]{
"a","b","c","d","e","f","g","h",
"i","j","k","l","m","n","o","p",
"q","r","s","t","u","v","w","x",
"y","z","0","1","2","3","4","5",
"6","7","8","9","A","B","C","D",
"E","F","G","H","I","J","K","L",
"M","N","O","P","Q","R","S","T",
"U","V","W","X","Y","Z"
};
var md5 = System.Security.Cryptography.MD5.Create();
string hex = BitConverter.ToString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(key + url))).Replace("-", "");
string[] resUrl = new string[4];
for (int i = 0; i < 4; i++)
{
int hexint = 0x3FFFFFFF & Convert.ToInt32("0x" + hex.Substring(i * 8, 8), 16);
string outChars = string.Empty;
for (int j = 0; j < 6; j++)
{
int index = 0x0000003D & hexint;
outChars += chars[index];
hexint >>= 5;
}
resUrl[i] = outChars;
}
return resUrl[new Random().Next(0, 3)];
}
}
}