1.ç®åhtml代ç ï¼
2.音视频流媒体开发系列(45)GLSurfaceView源码解析&EGL环境
3.为ä»ä¹è
¾è®¯è¿ä¹åå¾ï¼
4.45从零开始用Rust编写nginx,点源静态文件服务器竟然还有这些细节
5.C语言 | 选择1或2调用max或min(45)
ç®åhtml代ç ï¼
htmlç®åç½é¡µä»£ç æä¹åï¼
1ãå¨çµèæ¡é¢ç©ºç½å¤åå»å³é®ï¼æ°å»ºä¸ä¸ªè®°äºæ¬å¹¶æå¼
2ãå¨æ°å»ºæ件ä¸è¾å ¥å¦ä¸ä»£ç ãhtmlè¯è¨é½æ¯ä»¥htmlheadtitlebodyçæ ç¾å¼å§ï¼ä»¥/html/head/title/bodyæ ç¾ä½ä¸ºç»æã
3ãæ¥ä¸æ¥è¦å¨title/titleæ ç¾ä¸é´è¾å ¥æ é¢ï¼å¦ä¸ªäººç½é¡µï¼å¨body/bodyä¸è¾å ¥âèªå·±åç第ä¸ä¸ªç½é¡µï¼å害å§ï¼âå®æåç¹å»ä¿åã并å°è®°äºæ¬åç¼å.txtæ¹ä¸º.htmlæ ¼å¼
4ãå°è®°äºæ¬éå½å为.htmlæ ¼å¼åï¼åºç°å¦ä¸æ ¼å¼ã
5ãåå»æå¼æ¤æ件就ä¼åºç°æµè§å¨ç½é¡µææäºã
æ©å±èµæï¼
å端åå端çåºå«ï¼
1ãå±ç¤ºæ¹å¼
å端æçæ¯ç¨æ·å¯è§ççé¢ï¼ç½ç«å端页é¢ä¹å°±æ¯ç½é¡µç页é¢å¼åï¼æ¯å¦ç½é¡µä¸çç¹æãå¸å±ãå¾çãè§é¢ï¼é³é¢çå 容ãå端çå·¥ä½å 容就æ¯å°ç¾å·¥è®¾è®¡çææå¾ç设计ææµè§å¨å¯ä»¥è¿è¡çç½é¡µï¼å¹¶é åå端åç½é¡µçæ°æ®æ¾ç¤ºå交äºçå¯è§æ¹é¢çå·¥ä½å 容ã
å端æ¯æç¨æ·çä¸è§çä¸è¥¿ï¼é常æ¯ä¸å端工ç¨å¸è¿è¡æ°æ®äº¤äºåç½ç«æ°æ®çä¿åå读åï¼ç¸å¯¹æ¥è¯´å端æ¶åå°çé»è¾ä»£ç æ¯å端è¦å¤ï¼å端èèçæ¯åºå±ä¸å¡é»è¾çå®ç°ï¼å¹³å°ç稳å®æ§ä¸æ§è½çã
2ãæç¨ææ¯
å端å¼åç¨å°çææ¯å æ¬ä½ä¸éäºhtml5ãcss3ãjavascriptãjqueryãBootstrapãNode.jsãWebpackãAngularJsãReactJsãVueJsçææ¯ã
å端å¼å以java为ä¾ï¼ä¸»è¦ç¨å°çå æ¬ä½ä¸éäºStrutsãspringãspringmvcãHibernateHttpåè®®ãServletãTomcatæå¡å¨çææ¯ã
3ãå·¥ä½èè´£
å端工ç¨å¸ä¸»è¦çå·¥ä½èè´£å为ä¸å¤§é¨åï¼åå«æ¯ä¼ ç»çWebå端å¼åï¼ç§»å¨ç«¯å¼åå大æ°æ®åç°ç«¯å¼åã
å端工ç¨å¸ç主è¦èè´£ä¹éä¸å¨ä¸å¤§é¨åï¼åå«æ¯å¹³å°è®¾è®¡ãæ¥å£è®¾è®¡ååè½å®ç°ã
4ãç¥è¯ç»æ
å¨ç¥è¯ç»ææ¹é¢ï¼å端å¼åæ¶åå°çå 容å æ¬HtmlãCSSãJavaScriptãAndroidå¼åï¼éç¨Javaæè kotlinï¼ãiOSå¼åï¼éç¨OCæè Swiftï¼ãåç§å°ç¨åºå¼åææ¯ï¼ç±»Htmlï¼ï¼éçå端å¼åä»»å¡çä¸ææå±ï¼å端å¼åå端åä¹æ¯ä¸ä¸ªè¾ä¸ºææ¾çè¶å¿ã
å端å¼åçéç¹å¨äºç®æ³è®¾è®¡ãæ°æ®ç»æãæ§è½ä¼åçæ¹é¢ï¼å¨å ·ä½çåè½å®ç°é¨åå¯ä»¥éç¨JavaãPythonæè PHPçç¼ç¨è¯è¨æ¥å®ç°ã
ç½é¡µè®¾è®¡å¸¸ç¨HTML代ç
ç½é¡µè®¾è®¡å¸¸ç¨HTML代ç å¤§å ¨
HTMLæ¯ç¨æ¥æè¿°ç½é¡µçä¸ç§è¯è¨ãä¸é¢æ为大家å享HTML代ç ï¼å¸æ对大家å¦ä¹ html代ç æ帮å©ï¼
忽è§å³é®
bodyoncontextmenu="returnfalse"
æ
bodystyle="overflow-y:hidden"
1.å¦ä½å ç§å转å°å«ç页é¢ï¼
METAHTTP-EQUIV="Refresh"CONTENT="æ¶é´;URL=å°å"
2.ç¹å»å ³éçªå£
ahref="javascript:top.window.close();"ç¹å»å ³éçªå£/aï¼
3.请é®å¦ä½å»æ主页å³é¢çæ»å¨æ¡ï¼
bodyscroll="no"
bodystyle="overflow-y:hidden"
4.请é®å¦ä½åå°è®©ä¸ä¸ªç½é¡µèªå¨å ³é.
html
head
OBJECTid=closestype="application/x-oleobject"classid="clsid:adba6-d8ff-cf--aab7a"
paramname="Command"value="Close"
/object
/head
bodyonload="window.setTimeout(ââââcloses.Click()ââââ,码点码)"
è¿ä¸ªçªå£ä¼å¨ç§è¿åèªå¨å ³é,èä¸ä¸ä¼åºç°æ示./body
å¦ä½å¨ä¸å·æ°é¡µé¢çæ åµä¸å·æ°css?
style
button{ color:#;}
/style
buttononclick=document.styleSheets[0].rules[0].style.color=ââââredââââç¹å»æé®ç´æ¥ä¿®æ¹styleæ ç¾ébuttonéæ©ç¬¦ä½¿æé®æ¹ä¸ºçº¢è²/button
请é®å¦ä½è®©ç½é¡µèªå¨å·æ°ï¼
å¨headé¨è®°å ¥METAHTTP-EQUIV="Refresh"content=""å ¶ä¸ä¸ºç§åèªå¨å·æ°ï¼ä½ å¯ä»¥æ´æ¹ä¸ºä»»æå¼ã
5.å¦ä½è®©é¡µé¢èªå¨å·æ°ï¼
æ¹æ³ä¸ï¼ç¨refresh
HTML代ç ç段å¦ä¸:
head
meta/tickbh/wmproxy
github: /tickbh/wmproxy 静态文件服务器是一种用于提供静态文件(如HTML、CSS、位源JavaScript、点源等)的码点码网络服务器。当客户端(如浏览器)请求这些文件时,位源易语言随机分组源码静态文件服务器会直接从文件系统中获取文件并返回给客户端,点源而不需要经过任何处理或动态生成。码点码 浏览器缓存是位源一种机制,它将已访问过的点源资源的副本存储在浏览器中,以便在将来更快地加载相同的码点码资源。可以提高网页性能、位源qnx 源码减轻服务器负担、点源节省网络带宽并提供更好的码点码用户体验。在开发和优化网站时,位源合理地利用浏览器缓存可以显著提升网站的整体性能。 一个文件是否被修改过主要依靠以下两个属性:ETAG和Last-Modified。通常文件服务器返回时会附带这两个参数由客户端协助判断是否读取缓存数据。 控制缓存策略:控制过期时间主要由两种方式:设置Cache-Control: max-age=进行时间控制。以下我们进行测试:我们先对资源wmproxy.md进行请求,从返回结果中我们可以得知缓存时间s,最后修改时间及etag的值。让我们添加IF-NONE-MATCH进行测试,电驴 源码可以尝试添加最后修改时间的。通常浏览器会将两个值做为传参一起写入,文件发生变更,将会使缓存失败,重新返回请求。 断点续传也就是客户端可以指定传输范围进行传输,该标准定义在 RFC。HTTP 协议范围请求允许服务器只发送 HTTP 消息的一部分到客户端。范围请求在传送大的媒体文件,或者与文件下载的断点续传功能搭配使用时非常有用。 假如在响应中存在Accept-Ranges 首部(并且它的iterator 源码值不为"none"),那么表示该服务器支持范围请求。例如,你可以使用 cURL 发送一个 HEAD 请求来进行检测。在上面的响应中,Accept-Ranges: bytes 表示界定范围的单位是 bytes。这里 Content-Length 也是有效信息,因为它提供了要检索的文件的完整大小。如果返回的Accept-Ranges: none则表示不支持,如果未返回则表示可能不支持范围请求。 假如服务器支持范围请求的话,你可以使用Range 首部来生成该类请求。smtp 源码该首部指示服务器应该返回文件的哪一或哪几部分。我们可以请求资源的某一部分。这次我们依然用 cURL 来进行测试。"-H" 选项可以在请求中追加一个首部行,在这个例子中,是用 Range 首部来请求文件的前 个字节。这样生成的请求如下:服务器端会返回状态码为 Partial Content 的响应:在这里,Content-Length 首部现在用来表示先前请求范围的大小(而不是整个文件的大小)。Content-Range 响应首部则表示这一部分内容在整个资源中所处的位置。 发起请求和单一范围类似,只是在请求的时候多个范围地址,如:返回内容为Content-Type: multipart/byteranges boundary=THIS_STRING_SEPARATES并在body中以该字符做分隔成多数据块,如。请求多范围要针对解析body块,相对来说数据块请求比较割裂。在HTTP2中可以多流式请求范围或者用keep-alive同时发起多个请求,相对比较难与处理数据块,暂时不做实现。 当(中断之后)重新开始请求更多资源片段的时候,必须确保自从上一个片段被接收之后该资源没有进行过修改。通过If-Range 请求首部可以用来生成条件式范围请求:假如条件满足的话,条件请求就会生效,服务器会返回状态码为 Partial 的响应,以及相应的消息主体。假如条件未能得到满足,那么就会返回状态码为 OK 的响应,同时返回整个资源。该首部可以与 Last-Modified 验证器或者 ETag 一起使用,但是二者不能同时使用。 与范围请求相关的有三种状态:与浏览器缓存的设计(ETAG, Last-Modified, Cache-Control, Expires)及断点续传(Accept-Ranges: bytes)的实现流程及相关的部分源码,希望可以让你更了解文件服务器内部的原理组成。点击[关注],[在看],[点赞] 是对作者最大的支持。C语言 | 选择1或2调用max或min()
例:在C语言中,输入两个整数后,用户可选择1或2。选择1时,程序将调用max函数输出较大数;选择2时,则调用min函数输出较小数。
解题思路:创建两个函数max和min,分别用于计算并返回两个整数中的最大值和最小值。
源代码演示:
编译运行结果如下:
如果您觉得以上内容对您有所帮助,请给予点赞,这将鼓励我继续为您提供更多有价值的内容。感谢各位的支持!C语言C++编程学习交流圈子,QQ群:点击进入
整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)
欢迎转行和学习编程的朋友,利用丰富的学习资料,加速您的成长。自己摸索的学习过程可能较为缓慢,借助更多资源会让您更快地掌握编程技能。
编程学习资料分享: