微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从开发人员的角度来看,后端如何工作? 示例:

如何解决从开发人员的角度来看,后端如何工作? 示例:

有很多视频和网站试图解释后端与前端,但是不幸的是,它们都没有以您知道如何开发后端驱动的网站的方式来解释它(至少我还没有发现什么好方法)。

所以,我想确保我理解它,并请您确认或纠正我关于此主题的问题。

示例:

我想建立Mini-Google。我有一个包含1000个存储网站的数据库


假设1:
每次我在搜索栏中输入内容时,自动填充建议都会更改。这意味着,每次键入时,都会调用一个网站/ API,以返回当前的自动填充建议。在开发者网站上,这意味着该网站例如是一个Python脚本,该脚本使用当前输入的单词作为Parameter进行调用,并返回所有建议,例如JSON:

// Client Side Script
function ontype(input):
    suggestions = get("https://api.googlemini.com/suggestions?q=" + str(input))
    show(suggestions)

假设2:
这也意味着我可以手动调用包含Python脚本的网站,并提供一个随机单词,它将始终返回一个JSON,其中包含该单词的自动填充建议。


问题1:
如果A#1的结果是true,而A#2的结果是false,那么如何防止用户在脚本调用时仍返回结果的同时随机访问“ API”?


假设3:
按Enter键后,将调用我的网站googlemini.com/search?...。当google.com/search每次搜索查询(或进入第2页等)时都会重新加载时,我认为,当服务器收到客户端请求时,它会首先搜索数据库,并对结果进行排序,而不是调用API然后返回整个html作为静态网页:

// Server Side Script
@app.route("/search")
function oncall():
    query = getparam("q")
    results = searchdatabase(query)
    html = buildhtml(results)
    return html

问题2:
我经常听到(或至少以此方式理解)数据库和Web服务器是2个独立的服务器。那将如何工作?这是否意味着数据库服务器也需要可通过Web访问(当然它将具有安全层等,但从技术上来说也可以)?如何从Web服务器访问数据库服务器?


问题3:
从技术上讲,还有其他任何方式来构建后端服务吗?


就是这样。我还要感谢视频,网站或其他建议,以了解如何从技术上设置和/或保护后端服务器。

谢谢。

解决方法

对于第一个问题,您可以采用一种防止误用的方法。 您可以做的是在api中添加Auth标识符(例如Auth令牌)以标识用户,并且每次用户访问api时,只要计数在一定时间范围内超过限制,就可以将计数保存在服务器n上,您可以拒绝呼叫。限制的设置方式不会给诚实用户带来麻烦,也不会惩罚错误的用户。还有更复杂,更有效的方法,但这是基本思想。

关于问题号,让我向您解释一个简单的概念,数据库是一种非常有效,资源充足且昂贵的数据存储解决方案,我们从不希望将其作为可变存储之类的工具来使用。我们始终希望在调用获取数据过程中访问数据库的数据更新数据。因此,我们以数据方式进行操作,而不必为数据库创建单独的服务器。问题是,我们主要是使databse可以被android,ios,windows的各种平台访问。因此最好添加一些抽象并将数据库保持为独立实体。

最后,我不太了解您的意思,但是我列出了一些后端技术,其中一些可能被单独使用,而有些则没有其他工具。

  • Django
  • 烧瓶
  • Djnago休息
  • GraphQL
  • SQL
  • PHP
  • 节点
  • Deno

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。