跨域获取后台日期-ASP
最近所有的计划都被打乱,生活节奏也有些控制不住,所以在自己还算清醒的时候,把之前一个小功能写下来,对其它人也有些帮助。
需求前景:需要用AJAX跨域获取后台服务器日期。
1.分析需求:
在这个需求中,可能需要解决的几个重点:1.AJAX。2.跨域。3.获取后台服务器日期,在不确认获取的服务器日期可能要满足以下情况:Date、Time、Year、Month、Day、Hour、Minute、Second、DateTime。
2.实现需求:
前端代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TimeIndex.aspx.cs" Inherits="AjaxGetTime.TimeIndex" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <form id="form1" runat="server"> <label id="lblText"></label> </form> <script type="text/javascript"> var xmlHttp; function GetXmlHttp() { return window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP"); } function GetRequest() { var url = "TimeIndex.aspx?"; xmlHttp = GetXmlHttp(); xmlHttp.open("GET", url, true); xmlHttp.send(""); } </script> </body> </html>
后台代码:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace AjaxGetTime { public partial class TimeIndex : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { try { DateTime dateTime = DateTime.Now; String dateParam = (Request.QueryString["D"] == null) ? Request.QueryString["d"] : Request.QueryString["D"]; if (dateParam!=null) { if (dateParam.Length<50) { if (dateParam.Equals("Date",StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.ToShortDateString().ToString()); Response.End(); } else if (dateParam.Equals("Time", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.ToLongTimeString().ToString()); Response.End(); } else if (dateParam.Equals("Year", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.Year.ToString()); Response.End(); } else if (dateParam.Equals("Month", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.Month.ToString()); Response.End(); } else if (dateParam.Equals("Day", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.Day.ToString()); Response.End(); } else if (dateParam.Equals("Hour", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.Hour.ToString()); Response.End(); } else if (dateParam.Equals("Minute", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.Minute.ToString()); Response.End(); } else if (dateParam.Equals("Second", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.Second.ToString()); Response.End(); } else if (dateParam.Equals("DateTime", StringComparison.OrdinalIgnoreCase)) { Response.Write(dateTime.ToString()); Response.End(); } else { Response.Write(dateTime.ToString()); Response.End(); } } } else { Response.Write(dateTime.ToString()); Response.End(); } } catch (Exception) { } } } }
效果展示
以上只演示了Date、Time,其它的日期就改变url链接,可直接获取,这样方便了扩展性,并且满足了所有日期需求,不仅仅只是获得日期这一个区间。
这段时间,对更新博客有些懈怠,10月会努力,更新一些好点的博文给大家参考学习。
攀峰之高险岂有崖巅,搏海之明辉何来彼岸!前进不止,奋斗不息!
题外话:
今天本来上午就应该更新好的,上午就没歇息下来,一直在忙着处理各种紧急事件,虽然不是自己亲力亲为,但是一些需求沟通和其它部门领导调研需求,还需要我亲自去沟通,只能把苦力活分配给组员承担了,多学习学习!
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步