{"id":693,"date":"2025-12-09T17:31:27","date_gmt":"2025-12-09T09:31:27","guid":{"rendered":"https:\/\/www.52runoob.com\/?p=693"},"modified":"2025-12-09T17:31:27","modified_gmt":"2025-12-09T09:31:27","slug":"skynet-rawcall%e4%bd%bf%e7%94%a8%e5%ba%94%e7%94%a8%e5%9c%ba%e6%99%af%e5%88%86%e6%9e%90","status":"publish","type":"post","link":"https:\/\/www.52runoob.com\/index.php\/2025\/12\/09\/skynet-rawcall%e4%bd%bf%e7%94%a8%e5%ba%94%e7%94%a8%e5%9c%ba%e6%99%af%e5%88%86%e6%9e%90\/","title":{"rendered":"skynet.rawcall\u4f7f\u7528\u5e94\u7528\u573a\u666f\u5206\u6790"},"content":{"rendered":"\n<p>\u4e0b\u9762\u7ed9\u4f60\u6574\u7406\u4e00\u4efd <strong>\u300askynet.rawcall \u4f7f\u7528\u4e0e\u5e94\u7528\u573a\u666f\u5206\u6790\uff08\u8d85\u5168\uff09\u300b<\/strong>\uff0c\u91cd\u70b9\u8bb2\u89e3 rawcall \u7684\u4f5c\u7528\u3001\u539f\u7406\u3001\u4f7f\u7528\u65b9\u6cd5\u53ca\u5178\u578b\u5e94\u7528\u573a\u666f\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u4e00\u3001skynet.rawcall \u662f\u4ec0\u4e48\uff1f<\/strong><\/h1>\n\n\n\n<p>\u5728 Skynet \u6846\u67b6\u4e2d\uff0c<strong>skynet.rawcall<\/strong> \u662f <code>skynet.call<\/code> \u7684\u5e95\u5c42\u7248\u672c\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u533a\u522b\u4e8e call\uff1a<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>call<\/code> \u662f\u9ad8\u7ea7\u5c01\u88c5\uff0c\u4f1a\u81ea\u52a8\u5904\u7406 coroutine \u6302\u8d77\u3001\u7ed3\u679c\u89e3\u5305<\/li>\n\n\n\n<li><code>rawcall<\/code> \u76f4\u63a5\u53d1\u9001\u6d88\u606f\uff0c\u4e0d\u81ea\u52a8\u6302\u8d77\u534f\u7a0b\uff0c\u4e5f\u4e0d\u89e3\u5305\u8fd4\u56de\u7ed3\u679c<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u7279\u70b9\uff1a<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u9ad8\u6027\u80fd<\/li>\n\n\n\n<li>\u53ef\u7075\u6d3b\u63a7\u5236\u6d88\u606f\u5904\u7406\u6d41\u7a0b<\/li>\n\n\n\n<li>\u9002\u5408\u505a\u5185\u90e8 RPC \u6216\u6279\u91cf\u6d88\u606f\u5904\u7406<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>\u539f\u578b\uff1a<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nskynet.rawcall(addr, typename, session, ...)\n\n<\/pre><\/div>\n\n\n<p>\u53c2\u6570\u8bf4\u660e\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u53c2\u6570<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td><code>addr<\/code><\/td><td>\u76ee\u6807\u670d\u52a1\u5730\u5740\uff08\u540d\u5b57\u6216 handle\uff09<\/td><\/tr><tr><td><code>typename<\/code><\/td><td>\u6d88\u606f\u7c7b\u578b\uff0c\u4f8b\u5982 <code>\"lua\"<\/code><\/td><\/tr><tr><td><code>session<\/code><\/td><td>\u4f1a\u8bdd ID\uff08\u53ef\u4e3a 0\uff09<\/td><\/tr><tr><td><code>...<\/code><\/td><td>\u6d88\u606f\u5185\u5bb9\uff08\u9700\u81ea\u884c\u5e8f\u5217\u5316\uff09<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u4e8c\u3001rawcall \u4e0e call \/ send \u5bf9\u6bd4<\/strong><\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u529f\u80fd<\/th><th>send<\/th><th>call<\/th><th>rawcall<\/th><\/tr><\/thead><tbody><tr><td>\u662f\u5426\u963b\u585e<\/td><td>\u274c<\/td><td>\u2714<\/td><td>\u274c<\/td><\/tr><tr><td>\u81ea\u52a8\u6302\u8d77\u534f\u7a0b<\/td><td>\u274c<\/td><td>\u2714<\/td><td>\u274c<\/td><\/tr><tr><td>\u81ea\u52a8\u89e3\u5305\u8fd4\u56de<\/td><td>\u274c<\/td><td>\u2714<\/td><td>\u274c<\/td><\/tr><tr><td>\u4f7f\u7528\u573a\u666f<\/td><td>\u901a\u77e5<\/td><td>\u540c\u6b65 RPC<\/td><td>\u9ad8\u6027\u80fd\u81ea\u5b9a\u4e49 RPC \/ \u5185\u90e8\u6d88\u606f<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\u7b80\u5355\u7406\u89e3\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>send<\/code> \u2192 \u5355\u5411\u901a\u77e5<\/li>\n\n\n\n<li><code>call<\/code> \u2192 \u540c\u6b65\u8bf7\u6c42\u8fd4\u56de\u7ed3\u679c<\/li>\n\n\n\n<li><code>rawcall<\/code> \u2192 \u5e95\u5c42\u6d88\u606f\u53d1\u9001\uff0c\u53ef\u81ea\u5b9a\u4e49 session \/ \u4e0d\u6302\u8d77<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u4e09\u3001rawcall \u7684\u5e95\u5c42\u539f\u7406<\/strong><\/h1>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u76f4\u63a5\u53d1\u9001\u6d88\u606f<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u5c06\u6d88\u606f\u5c01\u88c5\u6210 <code>skynet_msg<\/code> \u7ed3\u6784\u53d1\u9001\u5230\u76ee\u6807\u670d\u52a1<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u4e0d\u6302\u8d77 coroutine<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u4e0d\u4f1a\u963b\u585e\u8c03\u7528\u65b9<\/li>\n\n\n\n<li>\u9002\u5408\u5728\u5e95\u5c42\u6d88\u606f\u961f\u5217\u4e2d\u5904\u7406\u5927\u91cf\u8bf7\u6c42<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u624b\u52a8\u5904\u7406 session<\/strong>\n<ul class=\"wp-block-list\">\n<li>\u8c03\u7528\u65b9\u9700\u8981\u7ba1\u7406 session ID<\/li>\n\n\n\n<li>\u76ee\u6807\u670d\u52a1\u8fd4\u56de\u65f6\u9700\u7528 <code>skynet.ret<\/code> \u6216 <code>skynet.response<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u56db\u3001rawcall \u7684\u5178\u578b\u4f7f\u7528\u65b9\u6cd5<\/strong><\/h1>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. \u5ba2\u6237\u7aef\u8c03\u7528 rawcall<\/strong><\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nlocal skynet = require &quot;skynet&quot;\n\n-- \u83b7\u53d6\u4e0b\u4e00\u4e2a session\nlocal session = skynet.context()\n-- \u53d1\u9001 rawcall\nskynet.rawcall(&quot;.user&quot;, &quot;lua&quot;, session, &quot;getName&quot;, 1001)\n\n<\/pre><\/div>\n\n\n<p>\u7279\u70b9\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u4e0d\u6302\u8d77\u8c03\u7528\u534f\u7a0b<\/li>\n\n\n\n<li>\u6d88\u606f\u53d1\u9001\u6210\u529f\u5373\u53ef\u7ee7\u7eed\u6267\u884c\u540e\u7eed\u903b\u8f91<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. \u670d\u52a1\u7aef\u54cd\u5e94<\/strong><\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nskynet.dispatch(&quot;lua&quot;, function(session, source, cmd, ...)\n    if cmd == &quot;getName&quot; then\n        local name = &quot;User_&quot; .. ...\n        skynet.ret(skynet.pack(name))  -- \u5c06\u7ed3\u679c\u8fd4\u56de\u7ed9 session\n    end\nend)\n\n<\/pre><\/div>\n\n\n<p>\u6ce8\u610f\uff1arawcall \u7684\u8fd4\u56de\u503c\u9700\u8981 <strong>\u624b\u52a8\u5904\u7406<\/strong>\uff0c\u4e0d\u4f1a\u81ea\u52a8\u89e3\u5305\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u4e94\u3001rawcall \u7684\u5e94\u7528\u573a\u666f\u5206\u6790<\/strong><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>1. \u9ad8\u6027\u80fd\u6279\u91cf\u6d88\u606f<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5f53\u9700\u8981\u4e00\u6b21\u6027\u53d1\u9001\u5927\u91cf RPC \u6d88\u606f<\/li>\n\n\n\n<li>\u4e0d\u5e0c\u671b\u6302\u8d77\u8c03\u7528\u534f\u7a0b<\/li>\n\n\n\n<li>\u53ef\u4ee5\u4f7f\u7528 rawcall \u6279\u91cf\u53d1\u9001\uff0c\u7136\u540e\u7edf\u4e00\u5904\u7406\u8fd4\u56de\u7ed3\u679c<\/li>\n<\/ul>\n\n\n\n<p>\u793a\u4f8b\uff1a<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nfor i = 1, 1000 do\n    skynet.rawcall(&quot;.log&quot;, &quot;lua&quot;, 0, &quot;writeLog&quot;, &quot;msg&quot;..i)\nend\n\n<\/pre><\/div>\n\n\n<ul class=\"wp-block-list\">\n<li>\u53d1\u9001\u5b8c\u5373\u8fd4\u56de\uff0c\u4e0d\u963b\u585e<\/li>\n\n\n\n<li>\u65e5\u5fd7\u670d\u52a1\u5f02\u6b65\u5904\u7406\u6d88\u606f<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>2. \u5185\u90e8\u4f4e\u7ea7 RPC<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5bf9 <code>skynet.call<\/code> \u592a\u91cd\u6216\u4e0d\u9700\u8981\u6302\u8d77\u534f\u7a0b\u7684\u5185\u90e8\u6d88\u606f<\/li>\n\n\n\n<li>\u4f8b\u5982\u670d\u52a1\u4e4b\u95f4\u7684\u5fc3\u8df3\u3001\u72b6\u6001\u540c\u6b65<\/li>\n\n\n\n<li>\u907f\u514d call \u7684 coroutine \u5f00\u9500\uff0c\u63d0\u9ad8\u6027\u80fd<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>3. \u81ea\u5b9a\u4e49 session \u7ba1\u7406<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u9700\u8981\u81ea\u5b9a\u4e49 session \u903b\u8f91\u65f6<\/li>\n\n\n\n<li>\u4f8b\u5982\u5b9e\u73b0 <strong>\u6d88\u606f ID \u5bf9\u5e94\u56de\u8c03<\/strong> \u6216 <strong>\u591a\u670d\u52a1\u805a\u5408\u8c03\u7528<\/strong><\/li>\n<\/ul>\n\n\n\n<p>\u793a\u4f8b\uff1a<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nlocal session = math.random(1, 100000)\npending&#x5B;session] = callback\nskynet.rawcall(&quot;.user&quot;, &quot;lua&quot;, session, &quot;getUser&quot;, uid)\n\n<\/pre><\/div>\n\n\n<ul class=\"wp-block-list\">\n<li>\u76ee\u6807\u670d\u52a1\u8fd4\u56de\u65f6\u4f7f\u7528 session \u5b9a\u5411\u56de\u8c03\u5904\u7406<\/li>\n\n\n\n<li>\u9002\u5408\u9ad8\u5e76\u53d1\u8bf7\u6c42\u7ba1\u7406<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>4. \u4e0e skynet.queue \/ coroutine \u7ed3\u5408<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5728\u9ad8\u5e76\u53d1\u73af\u5883\u4e0b\uff0crawcall + skynet.queue \u53ef\u5b9e\u73b0 <strong>\u987a\u5e8f\u5f02\u6b65\u5904\u7406<\/strong><\/li>\n\n\n\n<li>\u4fdd\u8bc1\u4e0d\u4f1a\u56e0 call \u963b\u585e\u5bfc\u81f4\u670d\u52a1\u6027\u80fd\u4e0b\u964d<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u516d\u3001\u4f7f\u7528\u6ce8\u610f\u4e8b\u9879<\/strong><\/h1>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u4e0d\u4f1a\u6302\u8d77\u534f\u7a0b<\/strong>\n<ul class=\"wp-block-list\">\n<li>rawcall \u8fd4\u56de\u540e\uff0c\u8c03\u7528\u65b9\u4e0d\u4f1a\u7b49\u5f85\u7ed3\u679c<\/li>\n\n\n\n<li>\u5fc5\u987b\u624b\u52a8\u7ba1\u7406\u8fd4\u56de\u503c<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>session \u7ba1\u7406<\/strong>\n<ul class=\"wp-block-list\">\n<li>session \u552f\u4e00\u4e14\u5bf9\u5e94\u8fd4\u56de\u6d88\u606f<\/li>\n\n\n\n<li>\u5e38\u7528\u8868\u5b58\u50a8\u56de\u8c03\u51fd\u6570<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u4e0e call \u6df7\u7528<\/strong>\n<ul class=\"wp-block-list\">\n<li>rawcall + call \u53ef\u4ee5\u7ec4\u5408<\/li>\n\n\n\n<li>call \u7528\u4e8e\u666e\u901a RPC\uff0crawcall \u7528\u4e8e\u6279\u91cf\u6216\u5185\u90e8\u5f02\u6b65<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u5f02\u5e38\u5904\u7406<\/strong>\n<ul class=\"wp-block-list\">\n<li>rawcall \u4e0d\u81ea\u52a8\u6355\u83b7\u9519\u8bef\uff0c\u9700\u8981\u624b\u52a8 pcall<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u4e03\u3001rawcall \u5b9e\u6218\u793a\u4f8b<\/strong><\/h1>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. \u6279\u91cf\u5f02\u6b65\u8bf7\u6c42<\/strong><\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nlocal skynet = require &quot;skynet&quot;\n\nlocal pending = {}\n\nfunction asyncGetName(uid, callback)\n    local session = math.random(1,100000)\n    pending&#x5B;session] = callback\n    skynet.rawcall(&quot;.user&quot;, &quot;lua&quot;, session, &quot;getName&quot;, uid)\nend\n\n-- \u5047\u8bbe\u7528\u6237\u5217\u8868\nlocal users = {1001,1002,1003}\nfor _, uid in ipairs(users) do\n    asyncGetName(uid, function(name)\n        print(&quot;UserName:&quot;, name)\n    end)\nend\n\n<\/pre><\/div>\n\n\n<h3 class=\"wp-block-heading\"><strong>2. \u670d\u52a1\u7aef\u7edf\u4e00\u8fd4\u56de<\/strong><\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nskynet.dispatch(&quot;lua&quot;, function(session, source, cmd, ...)\n    if cmd == &quot;getName&quot; then\n        local name = &quot;User_&quot; .. ...\n        skynet.ret(skynet.pack(name))\n    end\nend)\n\n<\/pre><\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>\u516b\u3001\u603b\u7ed3<\/strong><\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u7279\u6027<\/th><th>skynet.call<\/th><th>skynet.send<\/th><th>skynet.rawcall<\/th><\/tr><\/thead><tbody><tr><td>\u963b\u585e<\/td><td>\u2714<\/td><td>\u274c<\/td><td>\u274c<\/td><\/tr><tr><td>\u534f\u7a0b\u6302\u8d77<\/td><td>\u2714<\/td><td>\u274c<\/td><td>\u274c<\/td><\/tr><tr><td>\u81ea\u52a8\u89e3\u5305\u8fd4\u56de<\/td><td>\u2714<\/td><td>\u274c<\/td><td>\u274c<\/td><\/tr><tr><td>\u9002\u7528\u573a\u666f<\/td><td>\u666e\u901a RPC<\/td><td>\u901a\u77e5 \/ \u5355\u5411\u6d88\u606f<\/td><td>\u9ad8\u6027\u80fd\u6279\u91cf \/ \u5185\u90e8\u5f02\u6b65 \/ \u81ea\u5b9a\u4e49 session<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\u2705 <strong>\u6838\u5fc3\u7ed3\u8bba<\/strong>\uff1a<br><code>rawcall<\/code> \u9002\u5408 <strong>\u5bf9\u6027\u80fd\u8981\u6c42\u9ad8\u3001\u6d88\u606f\u91cf\u5927\u6216\u9700\u8981\u81ea\u5b9a\u4e49 session \u7ba1\u7406\u7684\u573a\u666f<\/strong>\uff0c\u800c\u666e\u901a RPC \u4f7f\u7528 <code>call<\/code> \u66f4\u7b80\u5355\u65b9\u4fbf\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e0b\u9762\u7ed9\u4f60\u6574\u7406\u4e00\u4efd \u300askynet.rawcall \u4f7f\u7528\u4e0e\u5e94\u7528\u573a\u666f\u5206\u6790\uff08\u8d85\u5168\uff09\u300b\uff0c&#8230; <a class=\"more-link\" href=\"https:\/\/www.52runoob.com\/index.php\/2025\/12\/09\/skynet-rawcall%e4%bd%bf%e7%94%a8%e5%ba%94%e7%94%a8%e5%9c%ba%e6%99%af%e5%88%86%e6%9e%90\/\">Continue Reading &rarr;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-693","post","type-post","status-publish","format-standard","hentry","category-2"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/posts\/693","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/comments?post=693"}],"version-history":[{"count":1,"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/posts\/693\/revisions"}],"predecessor-version":[{"id":694,"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/posts\/693\/revisions\/694"}],"wp:attachment":[{"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/media?parent=693"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/categories?post=693"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.52runoob.com\/index.php\/wp-json\/wp\/v2\/tags?post=693"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}