首页 新闻 会员 周边

无后缀URL跳转

0
悬赏园豆:15 [待解决问题]

类似于这种http://www.biqukan.com/0_790/ 跳转页面 0_790为传递的参数

FL陌上花开的主页 FL陌上花开 | 初学一级 | 园豆:52
提问于:2018-01-05 18:10
< >
分享
所有回答(2)
0

写条url重写规则即可

dudu | 园豆:31003 (高人七级) | 2018-01-05 18:55

大神怎么写,我是新手不是很懂,能给个例子或者撒的吗

支持(0) 反对(0) FL陌上花开 | 园豆:52 (初学一级) | 2018-01-05 19:48
0

取决于用什么基础模块了;

mvc 或者 wcf 都可以在函数上面直接通过XXAttribute设置,也可以由其他层次的拦截器(如filter、httpmodule等等,而且通常需要分解url来完成)一次性自定义map到类或者函数等处理;

如果是从tcp 或者 http做起拦不拦截都自己说了算,tcp做起你甚至可以不必完全遵从http规则都可以。

花飘水流兮 | 园豆:13560 (专家六级) | 2018-01-05 19:50

有点懵,我是学前端的大神,看不大懂

支持(0) 反对(0) FL陌上花开 | 园豆:52 (初学一级) | 2018-01-05 19:54

@FL陌上花开: 

[Route(WebApiConfig.BaseUrl + "/Customer/WebSite/{webSite}")]
public IHttpActionResult GetCustomerByDns(string webSite)

说多了是泪,你别选了,这个例子直接简单粗暴 —— 

支持(0) 反对(0) 花飘水流兮 | 园豆:13560 (专家六级) | 2018-01-05 20:00

@花飘水流兮: 选什么,你这例子没发完吗,

支持(0) 反对(0) FL陌上花开 | 园豆:52 (初学一级) | 2018-01-05 20:04

@FL陌上花开: 

拿去看~~看不懂就爱莫能助了。

[LApiAuthenticate]
public class CustomersController : ApiController
{

 

[ResponseType(typeof(DbCutstomer))]
[Route(WebApiConfig.BaseUrl + "/Customer/WebSite/{webSite}")]
public IHttpActionResult GetCustomerByDns(string webSite)
{
var publicKeyBase64 = ActionContext.Request.Headers.GetValues("publicKey").FirstOrDefault();
if (string.IsNullOrEmpty(publicKeyBase64))
{
return StatusCode(HttpStatusCode.Conflict);
}
var publickKey = Encoding.UTF8.GetString(Convert.FromBase64String(publicKeyBase64));
var webSiteString = Encoding.UTF8.GetString(Convert.FromBase64String(webSite));
var customer = _db.Customers.FirstOrDefault(t => t.WebSite == webSiteString);
if (customer == null) return NotFound();

var serverInfo = _db.Servers.Find(customer.ServerID);
if (serverInfo == null)return NotFound();

var rsa = new RSACryptoServiceProvider();
rsa.FromXmlString(publickKey);
var connectionString = $"Data Source={serverInfo.HostName},{serverInfo.DbPort};Initial Catalog=g{customer.ID};User ID={serverInfo.DbUser};Password={serverInfo.DbPwd}";
var connectionBuffer = Encoding.UTF8.GetBytes(connectionString);
var dbCustomer = new DbCutstomer();
customer.CopyTo(dbCustomer);
dbCustomer.DbConnectionInfo = Convert.ToBase64String(rsa.Encrypt(connectionBuffer, false));
return Ok(dbCustomer);
}

 

函数完....

....

支持(0) 反对(0) 花飘水流兮 | 园豆:13560 (专家六级) | 2018-01-05 20:08

@花飘水流兮 嗯,非常感谢

支持(0) 反对(0) FL陌上花开 | 园豆:52 (初学一级) | 2018-01-05 20:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册