字元集和編碼區別以及HTML/JS/CSS實體字元的表示

来源:https://www.cnblogs.com/straybirds/archive/2022/05/28/16298959.html
-Advertisement-
Play Games

1.字元集/字元編碼是什麼? 字元集或者說字元編碼就是給字元定義了數值編號以及數值編號存儲格式。 嚴格來說字元集和字元編碼是兩個概念: charset 是 character set 的簡寫,即字元集。 encoding 是 charset encoding 的簡寫,即字元集編碼,簡稱編碼。 字元集 ...


1.字元集/字元編碼是什麼?

字元集或者說字元編碼就是給字元定義了數值編號以及數值編號存儲格式。

嚴格來說字元集和字元編碼是兩個概念:
charset 是 character set 的簡寫,即字元集。
encoding 是 charset encoding 的簡寫,即字元集編碼,簡稱編碼。

字元集:定義了每個字元對應的二進位數值關係,也就是給字元定義了一個數值編號。
字元編碼:定義了該數值怎麼存儲(用幾個位元組來表示,數值二進位格式(有無特定標示))。

但有時候又可以認為是同一個意思:因為唯一對應。
比如:ASCII、IOS-8859-1、GB2312、GBK等等既是字元集又是字元編碼。

不是同一個意思情況:一個字元集對應多個實現形式。
比如Unicode只是字元集,對應的字元編碼卻有多個: UTF-8、UTF-16、UTF-32 。

補充:
因為歷史原因,最初是一一對應可以看成一個意思,後來出現一對情況拆分兩個意思,
所以有些地方認為是一個意思,有些不這樣認為,存在混淆,得自己明辨是非。 比如:charset也表示字元編碼的意思。 在 html中用charset指定字元集:
<meta charset="UTF-8"> 準確來說UTF-8是字元編碼。 而在xml中用encoding表示字元編碼顯得更加嚴緊: <?xml version="1.0" encoding="UTF-8"?> 實際我們只要關心字元編碼,因為由它決定存取和傳輸的格式。 值註意:關於Unicode的多重意思。 (1)Unicode 標準 (2)Unicode 字元集 (3)Unicode 的抽象編碼(編號),也即碼點(code point) (4)Unicode 的一個具體編碼實現,通常即為變長的 UTF-161632 位),又或者是更早期的定長 16 位的 UCS-2 特別註意java中編碼的問題!: 1.常說的java採用Unicode編碼,用兩個位元組表示字元。 這裡的Unicode編碼的意思是用定長UTF-16字元編碼,也就是運行時記憶體中一個字元用兩個位元組存儲。
2.有時候說java預設是UTF-8編碼.
其實說的是jvm預設編碼是UTF-8,
該編碼預設用處:字元和位元組數據組的轉換,io流轉換。
如果沒有設置jvm預設編碼,那麼預設使用操作系統的編碼。
也可以自己更改jvm的編碼:
更改JVM參數 -Dfile.encoding=UTF-8。

 以上內容,對字元集和字元編碼應該有了個瞭解。

一般說某某使用了Unicode編碼其實說的是某個具體實現,最常用是UTF-8,UTF-16實現形式。

 

2.什麼是html實體or實體字元or字元實體?

通常說法:

HTML一些預留字元(有特殊意義字元(比如標簽的“<”標示)),不能直接在文本使用,必須使用字元實體。以及鍵盤不能直接輸入的字元。

常見的HTML實體名稱和字元

實體名稱   字元           描述
&lt;            <    小於號或顯示標記
&gt;            >    大於號或顯示標記
&amp;    &    可用於顯示其它特殊字元
&quot;    “    引號
&reg;    ®    已註冊
&copy;    ©    版權
&trade;    ™    商標
&ensp;         半個空白位
&emsp;         一個空白位
&nbsp;         空格
常見HTML實體

字元實體有三部分:

一個和號‘&’和一個實體名稱(或者一個‘#’ 和一個實體編號),以及一個分號‘;’。

例子:“<”的字元實體。

<兩種表現形式:
實體名稱的方式:&lt;
實體編號的方式:&#60; //或者 &#x003C; (16進位格式(&#x;))

字元編號其實是ascii碼的編號,並且用十進位和十六進位都可以。

一些特殊字元有實體名稱,可以用實體名稱表示,可以查下麵ISO-8859-1字元集表。
不只是預留字元!其實所有字元都能用字元實體來表示,通過實體編號也就是ascii碼的編號來表示。

ISO-8859-1(HTML 4.01 中預設)和 UTF-8(HTML5 中預設)都是基於 ASCII 構建的。

ASCII 字元集

ASCII 指的是“美國信息交換標準代碼”(American Standard Code for Information Interchange)。

表:

字元    數字    描述
     0 - 31    Control characters (see below)
     32    space
!    33    exclamation mark
"    34    quotation mark
#    35    number sign
$    36    dollar sign
%    37    percent sign
&    38    ampersand
'    39    apostrophe
(    40    left parenthesis
)    41    right parenthesis
*    42    asterisk
+    43    plus sign
,    44    comma
-    45    hyphen
.    46    period
/    47    slash
0    48    digit 0
1    49    digit 1
2    50    digit 2
3    51    digit 3
4    52    digit 4
5    53    digit 5
6    54    digit 6
7    55    digit 7
8    56    digit 8
9    57    digit 9
:    58    colon
;    59    semicolon
<    60    less-than
=    61    equals-to
>    62    greater-than
?    63    question mark
@    64    at sign
A    65    uppercase A
B    66    uppercase B
C    67    uppercase C
D    68    uppercase D
E    69    uppercase E
F    70    uppercase F
G    71    uppercase G
H    72    uppercase H
I    73    uppercase I
J    74    uppercase J
K    75    uppercase K
L    76    uppercase L
M    77    uppercase M
N    78    uppercase N
O    79    uppercase O
P    80    uppercase P
Q    81    uppercase Q
R    82    uppercase R
S    83    uppercase S
T    84    uppercase T
U    85    uppercase U
V    86    uppercase V
W    87    uppercase W
X    88    uppercase X
Y    89    uppercase Y
Z    90    uppercase Z
[    91    left square bracket
\    92    backslash
]    93    right square bracket
^    94    caret
_    95    underscore
`    96    grave accent
a    97    lowercase a
b    98    lowercase b
c    99    lowercase c
d    100    lowercase d
e    101    lowercase e
f    102    lowercase f
g    103    lowercase g
h    104    lowercase h
i    105    lowercase i
j    106    lowercase j
k    107    lowercase k
l    108    lowercase l
m    109    lowercase m
n    110    lowercase n
o    111    lowercase o
p    112    lowercase p
q    113    lowercase q
r    114    lowercase r
s    115    lowercase s
t    116    lowercase t
u    117    lowercase u
v    118    lowercase v
w    119    lowercase w
x    120    lowercase x
y    121    lowercase y
z    122    lowercase z
{    123    left curly brace
|    124    vertical bar
}    125    right curly brace
~    126    tilde

ASCII 控制字元(範圍為 00-31,外加 127)旨在控制硬體設備。
控制字元(水平製表符、換行符和回車符除外)與 HTML 文檔無關。

字元    數字    描述
NUL    00    null character
SOH    01    start of header
STX    02    start of text
ETX    03    end of text
EOT    04    end of transmission
ENQ    05    enquiry
ACK    06    acknowledge
BEL    07    bell (ring)
BS    08    backspace
HT    09    horizontal tab
LF    10    line feed
VT    11    vertical tab
FF    12    form feed
CR    13    carriage return
SO    14    shift out
SI    15    shift in
DLE    16    data link escape
DC1    17    device control 1
DC2    18    device control 2
DC3    19    device control 3
DC4    20    device control 4
NAK    21    negative acknowledge
SYN    22    synchronize
ETB    23    end transmission block
CAN    24    cancel
EM    25    end of medium
SUB    26    substitute
ESC    27    escape
FS    28    file separator
GS    29    group separator
RS    30    record separator
US    31    unit separator
           
DEL    127    delete (rubout)
128個ASCII字元 

ISO-8859-1字元集

ISO-8859-1 是 HTML 4.01 中的預設字元。

使用範圍:北美,西歐,拉丁美洲,加勒比海,加拿大,非洲。

ISO(International Standards Organization,國際標準組織)為不同的字母/語言定義了標準字元集。
ISO-8859 是一個系列,還有覆蓋其他地方的比如,南歐,北歐的一些國家的字元。
包含了ascii所有字元外還有一些特殊符號。

(部分特殊的有實體名稱)

字元    實體編號    實體名稱    描述
     0 - 31         Control characters
     32         space
!    33         exclamation mark
"    34    &quot;    quotation mark
#    35         number sign
$    36         dollar sign
%    37         percent sign
&    38    &amp;    ampersand
'    39         apostrophe
(    40         left parenthesis
)    41         right parenthesis
*    42         asterisk
+    43         plus sign
,    44         comma
-    45         hyphen-minus
.    46         full stop
/    47         solidus
0    48         digit zero
1    49         digit one
2    50         digit two
3    51         digit three
4    52         digit four
5    53         digit five
6    54         digit six
7    55         digit seven
8    56         digit eight
9    57         digit nine
:    58         colon
;    59         semicolon
<    60    &lt;    less-than sign
=    61         equals sign
>    62    &gt;    greater-than sign
?    63         question mark
@    64         commercial at
A    65         Latin capital letter A
B    66         Latin capital letter B
C    67         Latin capital letter C
D    68         Latin capital letter D
E    69         Latin capital letter E
F    70         Latin capital letter F
G    71         Latin capital letter G
H    72         Latin capital letter H
I    73         Latin capital letter I
J    74         Latin capital letter J
K    75         Latin capital letter K
L    76         Latin capital letter L
M    77         Latin capital letter M
N    78         Latin capital letter N
O    79         Latin capital letter O
P    80         Latin capital letter P
Q    81         Latin capital letter Q
R    82         Latin capital letter R
S    83         Latin capital letter S
T    84         Latin capital letter T
U    85         Latin capital letter U
V    86         Latin capital letter V
W    87         Latin capital letter W
X    88         Latin capital letter X
Y    89         Latin capital letter Y
Z    90         Latin capital letter Z
[    91         left square bracket
\    92         reverse solidus
]    93         right square bracket
^    94         circumflex accent
_    95         low line
`    96         grave accent
a    97         Latin small letter a
b    98         Latin small letter b
c    99         Latin small letter c
d    100         Latin small letter d
e    101         Latin small letter e
f    102         Latin small letter f
g    103         Latin small letter g
h    104         Latin small letter h
i    105         Latin small letter i
j    106         Latin small letter j
k    107         Latin small letter k
l    108         Latin small letter l
m    109         Latin small letter m
n    110         Latin small letter n
o    111         Latin small letter o
p    112         Latin small letter p
q    113         Latin small letter q
r    114         Latin small letter r
s    115         Latin small letter s
t    116         Latin small letter t
u    117         Latin small letter u
v    118         Latin small letter v
w    119         Latin small letter w
x    120         Latin small letter x
y    121         Latin small letter y
z    122         Latin small letter z
{    123         left curly bracket
|    124         vertical line
}    125         right curly bracket
~    126         tilde
     127         Control character

在 ISO-8859-1 中,未定義 128159 之間的字元。
但存在約定俗成一些字元:
字元    實體編號    實體名稱    描述
€    128    &euro;    euro sign
     129         NOT USED
‚    130    &sbquo;    single low-9 quotation mark
ƒ    131    &fnof;    Latin small letter f with hook
„    132    &bdquo;    double low-9 quotation mark
…    133    &hellip;    horizontal ellipsis
†    134    &dagger;    dagger
‡    135    &Dagger;    double dagger
ˆ    136    &circ;    modifier letter circumflex accent
‰    137    &permil;    per mille sign
Š    138    &Scaron;    Latin capital letter S with caron
‹    139    &lsaquo;    single left-pointing angle quotation mark
Œ    140    &OElig;    Latin capital ligature OE
     141         NOT USED
Ž    142    &Zcaron;    Latin capital letter Z with caron
     143         NOT USED
     144         NOT USED
‘    145    &lsquo;    left single quotation mark
’    146    &rsquo;    right single quotation mark
“    147    &ldquo;    left double quotation mark
”    148    &rdquo;    right double quotation mark
•    149    &bull;    bullet
–    150    &ndash;    en dash
—    151    &mdash;    em dash
˜    152    &tilde;    small tilde
™    153    &trade;    trade mark sign
š    154    &scaron;    Latin small letter s with caron
›    155    &rsaquo;    single right-pointing angle quotation mark
œ    156    &oelig;    Latin small ligature oe
     157         NOT USED
ž    158    &zcaron;    Latin small letter z with caron
Ÿ    159    &Yuml;    Latin capital letter Y with diaeresis

ISO-8859-1(從 160191 的編碼)的下一部分包含常用的特殊字元。
字元    實體編號    實體名稱    描述
     &#160;    &nbsp;    non-breaking space
¡    &#161;    &iexcl;    inverted exclamation mark
¢    &#162;    &cent;    cent
£    &#163;    &pound;    pound
¤    &#164;    &curren;    currency
¥    &#165;    &yen;    yen
¦    &#166;    &brvbar;    broken vertical bar
§    &#167;    &sect;    section
¨    &#168;    &uml;    spacing diaeresis
©    &#169;    &copy;    copyright
ª    &#170;    &ordf;    feminine ordinal indicator
«    &#171;    &laquo;    angle quotation mark (left)
¬    &#172;    &not;    negation
­    &#173;    &shy;    soft hyphen
®    &#174;    &reg;    registered trademark
¯    &#175;    &macr;    spacing macron
°    &#176;    &deg;    degree
±    &#177;    &plusmn;    plus-or-minus
²    &#178;    &sup2;    superscript 2
³    &#179;    &sup3;    superscript 3
´    &#180;    &acute;    spacing acute
µ    &#181;    &micro;    micro
¶    &#182;    &para;    paragraph
·    &#183;    &middot;    middle dot
¸    &#184;    &cedil;    spacing cedilla
¹    &#185;    &sup1;    superscript 1
º    &#186;    &ordm;    masculine ordinal indicator
»    &#187;    &raquo;    angle quotation mark (right)
¼    &#188;    &frac14;    fraction 1/4
½    &#189;    &frac12;    fraction 1/2
¾    &#190;    &frac34;    fraction 3/4
¿    &#191;    &iquest;    inverted question mark

ISO-8859-1 的較高部分(從 192255 的編碼,215247 除外)包含西歐國家/地區使用的字元。
字元    實體編號    實體名稱    描述
À    &#192;    &Agrave;    capital a, grave accent
Á    &#193;    &Aacute;    capital a, acute accent
    &#194;    &Acirc;    capital a, circumflex accent
à   &#195;    &Atilde;    capital a, tilde
Ä    &#196;    &Auml;    capital a, umlaut mark
Å    &#197;    &Aring;    capital a, ring
Æ    &#198;    &AElig;    capital ae
Ç    &#199;    &Ccedil;    capital c, cedilla
È    &#200;    &Egrave;    capital e, grave accent
É    &#201;    &Eacute;    capital e, acute accent
Ê    &#202;    &Ecirc;    capital e, circumflex accent
Ë    &#203;    &Euml;    capital e, umlaut mark
Ì    &#204;    &Igrave;    capital i, grave accent
Í    &#205;    &Iacute;    capital i, acute accent
Î    &#206;    &Icirc;    capital i, circumflex accent
Ï    &#207;    &Iuml;    capital i, umlaut mark
Ð    &#208;    &ETH;    capital eth, Icelandic
Ñ    &#209;    &Ntilde;    capital n, tilde
Ò    &#210;    &Ograve;    capital o, grave accent
Ó    &#211;    &Oacute;    capital o, acute accent
Ô    &#212;    &Ocirc;    capital o, circumflex accent
Õ    &#213;    &Otilde;    capital o, tilde
Ö    &#214;    &Ouml;    capital o, umlaut mark
×    &#215;    &times;    multiplication
Ø    &#216;    &Oslash;    capital o, slash
Ù    &#217;    &Ugrave;    capital u, grave accent
Ú    &#218;    &Uacute;    capital u, acute accent
Û    &#219;    &Ucirc;    capital u, circumflex accent
Ü    &#220;    &Uuml;    capital u, umlaut mark
Ý    &#221;    &Yacute;    capital y, acute accent
Þ    &#222;    &THORN;    capital THORN, Icelandic
ß    &#223;    &szlig;    small sharp s, German
à    &#224;    &agrave;    small a, grave accent
á    &#225;    &aacute;    small a, acute accent
â    &#226;    &acirc;    small a, circumflex accent
ã    &#227;    &atilde;    small a, tilde
ä    &#228;    &auml;    small a, umlaut mark
å    &#229;    &aring;    small a, ring
æ    &#230;    &aelig;    small ae
ç    &#231;    &ccedil;    small c, cedilla
è    &#232;    &egrave;    small e, grave accent
é    &#233;    &eacute;    small e, acute accent
ê    &#234;    &ecirc;    small e, circumflex accent
ë    &#235;    &euml;    small e, umlaut mark
ì    &#236;    &igrave;    small i, grave accent
í    &#237;    &iacute;    small i, acute accent
î    &#238;    &icirc;    small i, circumflex accent
ï    &#239;    &iuml;    small i, umlaut mark
ð    &#240;    &eth;    small eth, Icelandic
ñ    &#241;    &ntilde;    small n, tilde
ò    &#242;    &ograve;    small o, grave accent
ó    &#243;    &oacute;    small o, acute accent
ô    &#244;    &ocirc;    small o, circumflex accent
õ    &#245;    &otilde;    small o, tilde
ö    &#246;    &ouml;    small o, umlaut mark
÷    &#247;    &divide;    division
ø    &#248;    &oslash;    small o, slash
ù    &#249;    &ugrave;    small u, grave accent
ú    &#250;    &uacute;    small u, acute accent
û    &#251;    &ucirc;    small u, circumflex accent
ü    &#252;    &uuml;    small u, umlaut mark
ý    &#253;    &yacute;    small y, acute accent
þ    &#254;    &thorn;    small thorn, Icelandic
ÿ    &#255;    &yuml;    small y, umlaut mark
ISO-8859-1字元集

 補充:HTML實體目的讓特殊字元不對解析HTML產生問題,事實卻又帶來新的XSS問題。

HTML實體增加了過濾xss的難度。
字元實體不會當做標簽處理但是寫在標簽屬性值位置卻可以按常規效果執行。

比如:如果href屬性值可以註入,做了對Javascript過濾,那麼
<a href=javascript:alert(1); >aa</a>
其中alert(1)不會執行。

如果javascript:alert(1);進行實體字元轉換為:
&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;&#59;
那麼變成了下麵效果:
<a href=
&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;&#59;
>aa</a>
這時候alert會正常執行。

xss利用一些屬性值可以執行js偽協議(javascript:執行腳本)。

據說實體字元是在dom樹節點創建後才會解碼,正因為如此,實體字元不能創建節點。

3.css實體,js實體

不僅html有實體字元,css,js都有!

在Unicode字元集也就是UTF-8字元編碼下,一些常見字元和實體表示如下:

符號   HTML        JS      CSS     符號   HTML        JS      CSS
⇠    &#8672    \u21E0    \21E0    ⇢    &#8674    \u21E2    \21E2
⇡     &#8673    \u21E1    \21E1    ⇣    &#8675    \u21E3    \21E3
↞    &#8606    \u219E    \219E    ↠    &#8608    \u21A0    \21A0
↟     &#8607    \u219F    \219F    ↡    &#8609    \u21A1    \21A1
←     &#8592    \u2190    \2190    →    &#8594    \u2192    \2192&#8593    \u2191    \2191    ↓    &#8595    \u2193    \2193&#8596    \u2194    \2194    ↕    &#8597    \u2195    \2195&#8644    \u21C4    \21C4    ⇅    &#8645    \u21C5    \21C5
↢     &#8610    \u21A2    \21A2    ↣    &#8611    \u21A3    \21A3
⇞     &

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 思路: 1、socket 建立一個數據報套接字。 2、定義一個struct ifreq ifr 結構體。將網路名稱如“eth0” 賦值給ifr結構體的ifr.ifr_name。 3、調用ioctl(sockfd, SIOCGIFFLAGS, &ifr) 獲取網路標識。 如需設置網路標識,更改ifr結 ...
  • teacher表: iddeptnamephonemobile 101 1 Shrivell 2753 07986 555 1234 102 1 Throd 2754 07122 555 1920 103 1 Splint 2293 104 Spiregrain 3287 105 2 Cutflow ...
  • 本文介紹如何使用 SELECT 語句查詢 SQL 如何對錶進行創建、更新和刪除操作 中創建的 Product 表中數據。這裡使用的 SELECT 語句是 SQL 最基本也是最重要的語句。 請大家在實際運行本文中的 SELECT 語句時,親身體驗一下其書寫方法和執行結果。 執行查詢操作時可以指定想要查 ...
  • 1 Hadoop介紹 Hadoop是Apache旗下的一個用java語言實現開源軟體框架,是一個開發和運行處理大規模數據的軟體平臺。允許使用簡單的編程模型在大量電腦集群上對大型數據集進行分散式處理。狹義上說,Hadoop指Apache這款開源框架,它的核心組件有: HDFS(分散式文件系統):解決 ...
  • 最近在數據處理中用到了窗函數, 把使用方法記錄一下, 暫時只有分組排序和滑動時間視窗的例子, 以後再逐步添加. 在SQL查詢時, 會遇到有兩類需要分組統計的場景, 在之前的SQL語法中是不方便實現的. 使用窗函數直接SQL中使用窗函數就能解決這些問題, 否則需要使用臨時表, 函數或存儲過程進行處理.... ...
  • 本文介紹如何使用 CREATE DATABASE 語句創建資料庫、 CREATE TABLE 語句創建表、ALTER TABLE 語句更新表、DROP TABLE 語句刪除表。 一、表的創建 本節要點 表通過 CREATE TABLE 語句創建而成。 表和列的命名要使用有意義的文字。 指定列的數據類 ...
  • 5月24日,由華為開發者聯盟主辦的HUAWEI Developer Day(華為開發者日,簡稱HDD)線上沙龍·創新開發專場在華為開發者學堂及各大直播平臺與廣大開發者見面。直播內容主要聚焦HarmonyOS和HMS生態應用開發,帶來關於HarmonyOS服務卡片、HMS Core開放能力、應用高效開 ...
  • 二維碼和條形碼從發明到發展已經過去了幾十年,因其能快捷方便讀取信息的特點,在數字經濟時代被廣泛應用。掃描二維碼可以識別健康狀況,識別身份信息、訪問網站鏈接、完成金融支付等等,已經成為生活中不可或缺的實用技術,所以很多App都搭載了“掃一掃”功能。 然而,在日常掃碼過程中,我們也經常會遇到掃碼環境暗、 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...