server-side 相关问题

术语“服务器端”是指在服务器上运行的应用程序的一部分。 “服务器端”的对应部分是“客户端”,这意味着应用程序的一部分在用户自己的机器上本地运行,例如在Web浏览器中。

Angular 11 Universal 和 Bootstrap 5 Toast 不工作 - 新的 bootstrap TS2304:找不到名称“bootstrap”,粉碎了

我使用 Angular 11 Universal - 服务器端渲染。我正在尝试实现 Bootstrap 5 toast(css 效果很好),但它不理解新的 bootstrap 类: angular.json - 已导入

回答 6 投票 0

Yajra 数据表搜索不适用于修改后的列

我在 Laravel 中使用 Yajra DataTables,并且遇到了修改列 (HAWB) 的搜索功能问题。我已经修改了 HAWB 列定义以显示可单击的链接,但是

回答 1 投票 0

用户池不存在

我尝试从 java 后端连接到 aws cognito,但是当在 AWS Lambda 中测试它时,它向我抛出异常并显示以下消息: "errorMessage": "用户池 XXXXX

回答 5 投票 0

带有完整url的react router dom链接组件

“Link to="https://example.com/CONTACT"> 和“link to="/CONTACT"> 是相同的,因为传递到链接组件的链接来自后端

回答 1 投票 0

NodeMailer 登录无效

我是node.js 编程新手。我正在使用nodemailer 模块发送电子邮件。 const nodemailer = require('nodemailer'), 凭证=require('./credentials.js'); var mailTransport=nodemailer.

回答 8 投票 0

如何安排每小时对服务器的请求并将数据存储在我自己的服务器上以便从 iOS 应用程序访问?

我的服务器端经验很少。我想知道对于以下情况我的最佳选择是什么。我想从一个 API 获取数据,但是有次数限制

回答 2 投票 0

检查是否使用 Rails 启用了 Javascript(服务器端)

如何检查 Rails 中是否启用了 javascript?这样我就可以在视图中做这样的事情: <% if javascript_enabled? %> Javascript已启用!<... 如何检查 Rails 中是否启用了 javascript?这样我就可以在视图中做这样的事情: <div> <% if javascript_enabled? %> <p>Javascript Enabled!</p> <%- else -%> <p>No Javascript</p> <%- end -%> </div> 你可以检测到它,但它并不漂亮。 首先,您需要一个新控制器,其操作可更新会话中的超时: class JavascriptController < ApplicationController def confirm session[:javascript_updated] = Time.now end end 接下来,您需要在所有页面中包含一个 javascript 操作,以便在每次页面加载时调用此控制器操作。最简单的方法是将其包含在布局中包含的“javascript-confirm.js”文件中(在这个特定示例中,我使用了 Prototype 的 Ajax.Request,因此您也需要将其包含在您的 javascript 中): function confirmJavascript() { // Assuming you are using Prototype new Ajax.Request('/JavascriptController/confirm'); } myTimeoutFunction(); setInterval(myTimeoutFunction, 10000); // invoke each 10 seconds 这将在您的所有页面视图中调用确认操作。最后,您必须控制自应用程序控制器中上次确认以来经过了多长时间。 class ApplicationController < ActionController::Base JAVASCRIPT_TIME_LIMIT = 10.seconds before_filter :prepare_javascript_test private def prepare_javascript_test if (session[:javascript_updated].blank? or Time.now - session[:javascript_updated] > ApplicationController::JAVASCRIPT_TIME_LIMIT) @javascript_active = true else @javascript_active = false end end end 现在,您的所有控制器中都会有一个名为 @javascript_active 的变量。 即使用户激活/停用 javascript,它也应该工作,精度为 10 秒。如果您的某些页面加载时间超过 10 页(即包含大量图像),它可能不起作用。在这种情况下增加时间限制(在应用程序控制器和您的 JavaScript 上) 免责声明:我还没有测试过这段代码,可能潜伏着一些错误 - 但它应该为您指明正确的方向。 如果这就是你想要的全部,最好将非 JS 版本放在视图中: <p class="replace_by_js">No Javascript</p> 然后用 Javascript 替换它:(我使用 jQuery) $('p.replace_by_js').replaceWith("<p>Javascript Enabled!</p>") 这种方法应该适用于您想要添加的几乎任何渐进增强功能。 无需编写大量代码来检查 JavaScript 是否启用,您只需在页面布局中编写为(使用 HAML)- %p.javascript_require No javascript, please enable JavaScript 并让你的 JavaScript 使用 hide() 函数隐藏该段落 - $(".javascript_require").hide(); 当 javascript 被禁用时,执行您想要执行的任何功能。 在渲染响应期间这是不可能的。确定可靠性较低或较高的唯一方法是让客户端在之前的请求之一中预先发送 ajaxical 请求。然后,这个ajaxal请求应该在服务器端会话中设置一些令牌,该令牌标识客户端已经事先发送了ajaxal请求(从而证明客户端启用了JS)。但这并没有涵盖客户端可以在会话期间同时禁用 JS 的可能性。或者您必须在每次响应后收集时间戳和 ajaxical 请求。这并不是您真正想做的事情。 而是渲染这两种内容并使用 <noscript> 和 <script> 标签来切换其中一个或另一个。另请参阅我的回答,了解几个示例:与<noscript>相反。 您无法在服务器端检测到它。事实上,第一次访问页面时脚本可能会被关闭,然后浏览器设置发生更改并重新导航,而无需发出新的 HTTP 请求。更不用说各种缓存问题以及脚本在技术上可能“启用”但由于冲突、错误或“安全”工具妨碍而无法工作的地方。 因此,您需要在客户端做出有关带脚本/不带脚本内容的所有决定。如今,首选方法通常是“渐进式增强”:在页面上包含基本的 HTML 版本,然后让 JavaScript 在可能的情况下替换/升级它: <div id="isitjs"> <p>Backup content for no JavaScript</p> </div> <script type="text/javascript"> document.getElementById('isitjs').innerHTML= '<p>Sparkly script-enhanced content!<\/p>'; // or DOM methods, as you prefer </script> 你可以做一些像这样的hacky,但是你的“启用javascript”的html需要在助手中生成 将其放入您的 application_helper.rb 中 def javascript_enabled? content_tag(:div, [ content_tag(:script, 'document.write("Javascript Enabled")'), content_tag(:noscript, 'No Javascript') ]) end 这在你看来是: <%= javascript_enabled? %> 您无法从服务器端检查是否启用了 Javascript,但是,您可以在站点之前设置一个页面,并使用指示是否启用 Javascript 的参数重定向到您的应用程序。请参阅下面的示例代码: <html> <head> <meta HTTP-EQUIV="REFRESH" content="2; url=./Login.action?javascriptEnabled=false"> <link rel="icon" href="favicon.ico" type="image/x-icon"/> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"/> <title></title> </head> <body onload="window.location.href='./Login.action?javascriptEnabled=true'" ></body> </html> 因此,如果启用了 Javascript,则 onload 重定向将起作用,如果没有,则标头元标记将起作用。 诀窍是在元标记重定向上放置 1-2 秒的延迟,因此如果 javascript 重定向不会重定向,元标记会重定向,表明没有启用 JavaScript。 代码少了一点(只有 1 行,只有 1 个文件),但与 Peter 的响应类似 - 将其添加到您的 layouts/application.html.haml 中: %script document.write("JavaScript已启用")

回答 8 投票 0

快速验证器检查输入是否是可用选项之一

目前我有这样的html代码: 选择一个元素 目前我有这样的html代码: <!DOCTYPE html> <html> <body> <p>Select an element</p> <form action="/action"> <label for="fruit">Choose a fruit:</label> <select name="fruit" id="fruit"> <option value="Banana">Banana</option> <option value="Apple">Apple</option> <option value="Orange">Orange</option> </select> <br><br> <input type="submit" value="Submit"> </form> </body> </html> 在服务器端,我想检查快速验证器是否发布请求中的水果是香蕉、苹果或橙子。 这是我到目前为止的代码: const{body} = require('express-validator'); const VALIDATORS = { Fruit: [ body('fruit') .exists() .withMessage('Fruit is Requiered') .isString() .withMessage('Fruit must be a String') ] } module.exports = VALIDATORS; 如何检查POST请求发送的字符串是否是所需的水果之一? 由于 express-validator 是基于 validator.js 的,因此您可以用于这种情况的方法应该已经可用。无需自定义验证方法。 从 validator.js 文档中,检查字符串是否在允许值的数组中: isIn(str, values) 您可以在验证链 API 中使用它,在您的情况下,例如: body('fruit') .exists() .withMessage('Fruit is Requiered') .isString() .withMessage('Fruit must be a String') .isIn(['Banana', 'Apple', 'Orange']) .withMessage('Fruit does contain invalid value') 此方法也包含在 express-validator 文档中,此处 https://express-validator.github.io/docs/validation-chain-api.html#not(在示例中用于 not 方法) 您可以通过.custom函数来完成; 例如: body('fruit').custom((value, {req}) => { const fruits = ['Orange', 'Banana', 'Apple']; if (!fruits.includes(value)) { throw new Error('Unknown fruit type.'); } return true; }) 确保在使用验证模式时将数组传递到选项字段中的另一个数组中 isIn checkSchema({ weekend: { // WRONG - Translates to `isIn('saturday', 'sunday')` isIn: { options: ['saturday', 'sunday'] }, // RIGHT - Translates to `isIn(['saturday', 'sunday'])` isIn: { options: [['saturday', 'sunday']] }, }, });

回答 3 投票 0

发生异常:错误:ENOENT:没有这样的文件或目录

我正在尝试调试我的nodejs应用程序,但在运行javascript调试器时,它显示错误。 这是我的项目的 package.json 文件。 { “名称”:“服务器”, ”

回答 2 投票 0

如何使用jwt token访问nextjs 14中服务器端组件中的API?

当用户登录时,我有一个登录组件(客户端组件)。在nest js(不是下一个)中单独制作的后端提供jwt_token。现在我在用户页面上向所有用户显示...

回答 1 投票 0

在Vue3中转换一些要在服务器端渲染的页面

我想知道如何将 Vue3 项目中的两个页面转换为在服务器端渲染以增强其 SEO。我还想避免迁移到 Nuxt.js。 提前感谢您的帮助。 我试过了...

回答 1 投票 0

pdfmake:一些表格没有出现表格标题

我正在尝试创建动态表格内容,它似乎工作正常。内容属于以下类型 内容: [ { 文本:“5.24011.01.0”, 风格...

回答 1 投票 0

使用 Razor 的动态样式表

如何在 CSS 文件中使用 Razor? 我使用 Razor View Engine 一段时间了,我对在样式表上使用它感到好奇。我可以在 .cshtml 文件块中使用 Razor,但我赢了......</desc> <question vote="15"> <p>如何在 CSS 文件中使用 Razor?</p> <p>我使用 <a href="https://github.com/Antaris/RazorEngine" rel="nofollow noreferrer">Razor View Engine</a> 一段时间了,我对在样式表上使用它感到好奇。我可以在 <pre><code>&lt;style&gt;</code></pre> <strong>.cshtml</strong> 文件块中使用 Razor,但我想知道是否也可以在外部 <strong>.css</strong> 文件中使用它(希望有 <strong>.cscss</strong> 格式)。所以我用谷歌搜索,发现了两件事:</p> <p>第一个是<a href="http://lesscss.org/" rel="nofollow noreferrer">LESS</a>:“动态样式表语言”。它看起来易于使用且功能强大,具有所有功能,但我真的需要 Razor-C#。</p> <p>第二个是<a href="http://www.codeproject.com/Articles/171695/Dynamic-CSS-using-Razor-Engine" rel="nofollow noreferrer">使用 Razor Engine 的动态 CSS</a>,这是一篇 CodeProject 文章,它更像是我想要的,但它没有缓存或预编译支持(我所说的“不支持”是指作者没有提到这些方面)。我还想在 Visual Studio 中进行一些语法突出显示,但这是次要的。</p> <p>那么,如何在 CSS 文件中以最低的性能成本编写 Razor,并且最好具有语法高亮功能?</p> <ul> <li>有一个“更完整”的项目吗?</li> <li>我可以改进上面的项目来实现缓存/编译吗?如果是这样,怎么办? </li> </ul> <p><em>旁注:</em><br/> 我发现了一个名为 <a href="http://djsolid.net/blog/razorjs---write-razor-inside-your-javascript-files" rel="nofollow noreferrer">RazorJS</a> 的项目。它就像我想要的 CSS 的 Javascript 版本,具有缓存支持。我提到这一点只是为了澄清我的需求。我目前不需要在 Javascript 中使用 Razor,但我想如果我用 CSS 来实现,用 Javascript 做同样的事情不会太难。</p> </question> <answer tick="true" vote="30"> <p>您可以创建自定义视图引擎:</p> <pre><code>public class CSSViewEngine : RazorViewEngine { public CSSViewEngine() { ViewLocationFormats = new[] { &#34;~/Views/{1}/{0}.cscss&#34;, &#34;~/Views/Shared/{0}.cscss&#34; }; FileExtensions = new[] { &#34;cscss&#34; }; } protected override IView CreateView(ControllerContext controllerContext, string viewPath, string masterPath) { controllerContext.HttpContext.Response.ContentType = &#34;text/css&#34;; return base.CreateView(controllerContext, viewPath, masterPath); } } </code></pre> <p>并在 <pre><code>Application_Start</code></pre> 中使用自定义扩展进行注册:</p> <pre><code>ViewEngines.Engines.Add(new CSSViewEngine()); RazorCodeLanguage.Languages.Add(&#34;cscss&#34;, new CSharpRazorCodeLanguage()); WebPageHttpHandler.RegisterExtension(&#34;cscss&#34;); </code></pre> <p>并在 web.config 内部将扩展与构建提供程序相关联:</p> <pre><code>&lt;compilation debug=&#34;true&#34; targetFramework=&#34;4.0&#34;&gt; &lt;assemblies&gt; ... &lt;/assemblies&gt; &lt;buildProviders&gt; &lt;add extension=&#34;.cscss&#34; type=&#34;System.Web.WebPages.Razor.RazorBuildProvider, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&#34;/&gt; &lt;/buildProviders&gt; &lt;/compilation&gt; </code></pre> <p><sub>[<strong>注意</strong>,如果出现程序集绑定错误,您可能需要更改扩展类型中的版本号以匹配您的 Razor 引擎版本。您可以通过查看项目中对 System.Web.WebPages.Razor 程序集的引用的属性来检查您正在使用哪个版本]</sub></p> <p>最后一步是要有一些控制器:</p> <pre><code>public class StylesController : Controller { public ActionResult Foo() { var model = new MyViewModel { Date = DateTime.Now }; return View(model); } } </code></pre> <p>以及相应的视图:(<pre><code>~/Views/Styles/Foo.cscss</code></pre>):</p> <pre><code>@model AppName.Models.MyViewModel /** This file was generated on @Model.Date **/ body { background-color: Red; } </code></pre> <p>现在可以作为样式包含在布局中:</p> <pre><code>&lt;link href=&#34;@Url.Action(&#34;Foo&#34;, &#34;Styles&#34;)&#34; rel=&#34;stylesheet&#34; type=&#34;text/css&#34; /&gt; </code></pre> </answer> <answer tick="false" vote="0"> <p>Google 将我带到这里,所以这是我对 Razor Pages 应用程序的回答</p> <p>有一个控制器路由,您可以在其中返回 css 文件。不要忘记在启动时<pre><code>app.MapControllers();</code></pre></p> <pre><code>public class StyleController : ControllerBase { [HttpGet(&#34;themes.css&#34;)] public IActionResult GenerateApplicationTheme() { var applicationStyles = GenerateStyles(); var fileBytes = Encoding.UTF8.GetBytes(applicationStyles); return new FileContentResult(fileBytes, &#34;text/css&#34;); } } </code></pre> <p>在共享<pre><code>_Layout.cshtml</code></pre>或任何引用它的地方。如果您没有在 Get 属性中设置路由,则无法正确引用它。</p> <pre><code>&lt;link rel=&#34;stylesheet&#34; href=&#34;@Url.Action(&#34;GenerateApplicationTheme&#34;, &#34;Style&#34;)&#34; /&gt; </code></pre> </answer> </body></html>

回答 0 投票 0

通过服务器端分页提供 ag-grid-angle 最后一页信息

我在我的角度应用程序中使用ag-grid entreprise。我有一个服务器端分页。 我的服务器响应返回我的数据并且: “页”:1, “页面大小”:10, “总共_页...

回答 1 投票 0

如何将旧的 .NET OutputCaching 转换为 .NET 8.0 OutputCaching?

下面的代码非常适合我的 .NET 4.5 网站: [OutputCache(VaryByParam = "*", Duration = 60, NoStore = true, Location = OutputCacheLocation.Server)] // 1 分钟缓存 公开

回答 1 投票 0

NextJS |当我将受保护的身份验证导入页面时出现打字稿问题

这是我的 protected.tsx,当我在下面的页面上使用它时,出现一些错误,例如 服务器错误 错误:尝试调用 C:\Importir.id\NextJs\diecast-app pp\hoc\withProtected.tsx 的默认导出

回答 1 投票 0

如何将 props 或 states 从父组件(子组件)传递给子组件(服务器组件)?

我有一个服务器 API 调用,需要用户的 IP 地址。为了跟踪用户,我使用第三方 api。 现在,我主要面临的问题是,客户端代码无法加载...

回答 1 投票 0

GD 扩展图像调整大小不适用于手机

我有一个网站,其中包含一个表单,允许用户将图像从其设备上传到网站以将其用于特定目的。我现在在 PHP 中使用 GD 扩展来压缩...

回答 1 投票 0

Set-Cookie响应头不设置cookie(GTM服务器端实现)

我正在尝试使用服务器端 GTM 容器的响应设置 cookie。 我的设置: 客户端 GTM 上的自定义 HTML 标记: fetch('{{sst地址}}', { 方法:'POST', /...</desc> <question vote="0"> <p>我正在尝试使用服务器端 GTM 容器的响应设置 cookie。</p> <p>我的设置:</p> <ol> <li>客户端 GTM 上的自定义 HTML 标签:</li> </ol> <pre><code>&lt;script&gt; fetch(&#39;{{sst address}}&#39;, { method: &#39;POST&#39;, //mode: &#39;no-cors&#39;, headers: { &#39;content-type&#39;: &#39;application/json; charset=utf-8&#39;, &#39;x-gtm-server-preview&#39;: &#39;{{sst preview}}&#39; }, body: JSON.stringify({ &#34;events&#34;: [{ &#34;event_name&#34;: &#34;{{Event}}&#34; }] }) }); &lt;/script&gt; </code></pre> <ol start="2"> <li>正在发送两个请求:</li> </ol> <ul> <li><a href="https://i.stack.imgur.com/J04yE.png" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL0owNHlFLnBuZw==" alt="OPTIONS request sreenshoot"/></a></li> <li><a href="https://i.stack.imgur.com/GPsT8.png" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL0dQc1Q4LnBuZw==" alt="POST request sreenshoot"/></a></li> </ul> <ol start="3"> <li><p>在同一域 (sing.eventless.org) 上设置的服务器端容器处理 CORS 标头并在响应中添加“Set-Cookie”: <a href="https://i.stack.imgur.com/xjvUO.png" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL3hqdlVPLnBuZw==" alt="Response Headers screenshot"/></a></p> </li> <li><p>cookie 在请求浏览器中可见,但在应用程序选项卡中不可见(在 Safari 中也不会创建 cookie):</p> </li> </ol> <ul> <li><a href="https://i.stack.imgur.com/6Pu1w.png" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tLzZQdTF3LnBuZw==" alt="Cookie visible in the request explorer screenshot"/></a></li> <li><a href="https://i.stack.imgur.com/frAY1.png" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL2ZyQVkxLnBuZw==" alt="Lack of Cookie in the Application tab screenshot"/></a></li> </ul> <ol start="5"> <li>为了进行比较,我还为 GA4 设置了一个常规 Google 标签,它也设置了 cookie,然后正确设置,执行完全相同的操作(在响应标头中设置 Cookie): <a href="https://i.stack.imgur.com/Pnvf9.jpg" target="_blank"><img src="https://cdn.txt58.com/i/AWkuc3RhY2suaW1ndXIuY29tL1BudmY5LmpwZw==" alt="cookie set correctly with the GA4 request screenshot"/></a></li> </ol> <p>您可以使用 Chrome 开发工具在 <a href="https://eventless.org" rel="nofollow noreferrer">eventless.org</a> 复制它。</p> <p>为什么cookie没有被设置?</p> <p>我尝试过:</p> <ul> <li>从邮递员发送相同的请求 - <strong>它在那里工作......</strong></li> <li>更改 cookie 的名称/值</li> <li>操作 SameSite、Domain、Expiration 和 HttpOnly 参数</li> <li>更改 URL 和路径</li> <li>禁用/启用兑现</li> </ul> </question> <answer tick="false" vote="0"> <p>我找到了解决办法。在第一个标签中 - 来自客户端 GTM,应该添加凭据:</p> <p></p><div data-babel="false" data-lang="js" data-hide="false" data-console="true"> <div> <pre><code>&lt;script&gt; fetch(&#39;{{sst address}}&#39;, { method: &#39;POST&#39;, headers: { &#39;content-type&#39;: &#39;application/json; charset=utf-8&#39;, &#39;x-gtm-server-preview&#39;: &#39;{{sst preview}}&#39; }, credentials: &#39;include&#39;, body: JSON.stringify({ &#34;events&#34;: [{ &#34;event_name&#34;: &#34;{{Event}}&#34; }] }) }); &lt;/script&gt;</code></pre> </div> </div> <p></p> </answer> </body></html>

回答 0 投票 0

当我使用 GTM 服务器端插件激活数据层时,“添加到购物车”删除按钮停止工作

我为我的 WooCommerce 业务创建了一个独特的主题,并选择添加 GTM 服务器端插件 https://wordpress.org/plugins/gtm-server-side/ 来改进我的分析,但是,出现了问题.. ..

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.