Go 項目實戰 - API 路由的分模塊管理
隨着項目開發的迭代,我們寫的接口往往會越來越多,如果都把 API 的路由寫到一個文件裏,那麼整個路由文件就會變得又亂又長,所以我們最好在項目開始階段就給路由的分模塊管理做好規劃。今天這個文章給大家介紹一下 Web 項目 API 路由的分模塊管理,我們的項目使用的是 Gin 框架,但基本上所有的 Web 框架都能按照這個方式來分模塊管理 API 接口的路由。 一些路由管理混亂的例子——– ⌘ Read more
This morning (and a little bit of the afternoon) the idea of having a full referenced archive of twtxts on the web has consumed me a bit. I am talking about something similar to the email archives one see online, but for twtxts, and a more personal level. Such archive would be available, even if the involved feeds are long gone, because feeds will be treated as received emails.
How to Turn Off Find My Mac
Find My Mac is an incredibly valuable aspect of iCloud that allows you to find your Mac by using another Apple device’s Find My app, or through iCloud on the web. Aside from the obvious anti-theft aspects that make Find My Mac so important, the majority of users are more likely end up using Find … Read More ⌘ Read more
(#nf6eyeq) @slashdot Oh come one?! Web5?! Since when was this even thing?! 😱 🤦♂️ I could grample with Web 1.0, Web 2.0 and even Web …
@slashdot @feeds.twtxt.net Oh come one?! Web5?! Since when was this even thing?! 😱 🤦♂️ I could grample with Web 1.0, Web 2.0 and even Web 3.0 ( to a container degre), but Web 4.0 and Web 5.0 ?! Come on?! 😱 Get the fuck out! (GTFO) 😠 ⌘ Read more
使用 Go 構建 Web 應用:MVC 模式、Gin 框架、GORM 和 JWT
在本文中,我們將使用 Go 編程語言構建一個 Web 應用程序,利用 Gin 框架進行路由,GORM 進行數據庫交互,並使用 JWT(JSON Web Tokens)進行身份驗證。應用程序將採用 MVC(模型 - 視圖 - 控制器)設計模式,以促進關注點的清晰分離。前置條件—-在開始之前,請確保您具備以下條件:已在您的計算機上安裝 Go(版本 1.16 或更高)。 已設置 Postgre ⌘ Read more
Last week at The Lunduke Journal (Oct 20 - Nov 2, 2024)
Linux v. Russia! Internet Archive Weirdness! RISC OS Web Browsing! ⌘ Read more
Got a PPC Mac in the Closet? Check Out the Aquafox Browser for Tiger & Leopard
If you have an old PowerPC Mac laying around collecting dust in a closet somewhere, you might be able to get some use out of it today by installing a functional modern web browser, like Aquafox. Since so much of what many of us do on computers is done in a web browser, you might … [Read More](https://osxdaily.com/2024/11/01/got-a-ppc-mac-in-the-closet-check-out-the-aquafox-br … ⌘ Read more
@Codebuzz@www.codebuzz.nl I use Jenny to add to a local copy of my twtxt.txt file, and then manually push it to my web servers. I prefer timestamps to end with “Z” rather than “+00:00” so I modified Jenny to use that format. I mostly follow conversations using Jenny, but sometimes I check twtxt.net, which could catch twts I missed.
Open Source RISC OS Now Has WiFi and Modern Web Browser on Raspberry Pi
The OS first released in 1987 for Acorn computers is becoming a viable modern desktop. ⌘ Read more
mainnet-pat submits CCS proposal to complete XMR-BCH atomic swaps project
mainnet-pat1 has submitted a CCS proposal2 looking to finalize the effort to create the web platform for XMR-BCH atomic swap utilizing the adaptor signatures:
The work on server-side is mostly done and being tested, funded by generous donors from BCH Flipstarter campaign3. As we have initially underestimated (in the framework of BCH flipstarter) the effort to finish the task, … ⌘ Read more
Huh. I had long forgotten about text fragment URLs. Seems relevant for linking to discussions around linking to individual twtxt posts. https://alfy.blog/2024/10/19/linking-directly-to-web-page-content.html
IP 訪問限制及提交次數,用 golang 如何實現 ?
在 Web 應用中,通常會需要對 IP 訪問進行限制以及控制提交次數,以防止惡意攻擊(例如暴力破解、DoS 攻擊、API 濫用等)。爲了實現這一功能,我們可以結合 Golang 的特性,使用中間件或者基於 Redis 這樣的緩存服務來實現 IP 限制和提交次數的控制。實現步驟IP 訪問限制:對每個 IP 的訪問頻次進行限制,比如每個 IP 每分鐘只能訪問某個接口 10 次。超過限制後,返回錯誤信息 ⌘ Read more
It really bugs me when a Web site for a tool has a link called “How It Works”, but the actual information behind that link is “how to use”. A set of operating instructions for a tool and an explanation of the principles that enable the tool to function are two very different things.
golang 是如何防範 SQL 注入、CSRF、XSS 攻擊 的
在 Go 語言的 Web 開發中,常見的安全問題包括 SQL 注入、CSRF(跨站請求僞造)、和 XSS(跨站腳本攻擊)。Go 提供了多種機制與工具庫來防範這些攻擊。以下是針對每種攻擊的防範措施:防範 SQL 注入————SQL 注入 是一種通過修改 SQL 查詢的輸入,使攻擊者能夠執行未授權 SQL 語句的攻擊手段。防範 SQL 注入的關鍵是避免直接拼接 SQL 字符串,而是使用 ⌘ Read more
Web interface is deleted in https://git.mills.io/saltyim/saltyim/commit/376de2702319686c902ec03b8ca1e17b020fc639 but seems incorrectly (in source i see git lfs metadata). Can be builded if you grab https://git.mills.io/saltyim/saltyim/src/commit/15a64de82829/internal/web/app.wasm and place it in source (go directory has cached source) and rebuild
TWO HOURS wasted today trying to figure out why an image wasn’t loading on some web page and what I was doing wrong… when the issue is the friggin’ DSL router is injecting headers into http (non-https) pages. GAH! I’m ready to throw the thing. I’ve never been so mad at CPE. 🤬
IndieWeb Carnival: multilingualism in a global Web
This is my first entry to an IndieWeb Carnival, and the topic this time is especially interesting: multilingualism in a global Web. ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter September 2024
XMPP Newsletter Banner
Welcome to the XMPP Newsletter, great to have you here again!
This issue covers the month of September 2024.
If you are interested in joining the XMPP Standards Foundation as a member, please apply until November 24th, 2024!.
The [XMPP Standards F … ⌘ Read more
Ignite Realtime Blog: XMPP: The Protocol for Open, Extensible Instant Messaging
Introduction to XMPPXMPP, the Extensible Messaging and Presence Protocol, is an Instant Messaging (IM) standard of the Internet Engineering Task Force (IETF) - the same organization that standardized Email (POP/IMAP/SMTP) and the World Wide Web (HTTP) protocols. XMPP evolved out of the early XML streaming technology developed by the XMPP Open Source community and is now the leading pro … ⌘ Read more
** Guitar driven development **
I’ve found myself in possession of a guitar. Actually, the guitar that I had in middle school has come back to me after a decade’s long jaunt with someone else. I don’t really play guitar, but, I figured I should restring it and tune it.
I’m really very bad at tuning, so, rather than get good at that, or use any of the existing tools within reach of the internet to help me with that I made a thing. Tuner is a little web app that does 2 things: using a device’s … ⌘ Read more
On removing content
I recently read this short post by Kev Quirk. It’s about removing content from the web. While Manuel Moreale is against deleting content from the web, Kev thinks he would probably delete things if he feels bad about them. ⌘ Read more
@quark@ferengi.one It looks like the part about traditional topics has been removed from that page. Here is an old version that mentions it: https://web.archive.org/web/20221211165458/https://dev.twtxt.net/doc/twtsubjectextension.html . Still, I don’t see any description of what is actually allowed between the parentheses. May be worth noting that twtxt.net is displaying the twts with the subject stripped, so some piece of code is recognizing it as a subject (or, at least, something to be removed).
Artifact Hub becomes a CNCF incubating project
The CNCF Technical Oversight Committee (TOC) has voted to accept Artifact Hub as a CNCF incubating project. Artifact Hub is a web-based application that enables finding, installing, and publishing cloud native packages and configurations. Discovering useful cloud native… ⌘ Read more
Docker for Web Developers: Getting Started with the Basics
In this post, we’ll discuss Docker for web developers by covering its broad capabilities, strengths, and features for bolstering developer productivity. ⌘ Read more
FreeCAD 1.0: The Most Important Linux Release of 2024
It may not be a Web Browser, Office Suite, or Game… but great CAD was needed for Linux. ⌘ Read more
Artifact Hub becomes a CNCF incubating project
The CNCF Technical Oversight Committee (TOC) has voted to accept Artifact Hub as a CNCF incubating project. Artifact Hub is a web-based application that enables finding, installing, and publishing cloud native packages and configurations. Discovering useful cloud native… ⌘ Read more
you can just have a web address.. i added mine.. though i think they have changed up the protocol so my key doesn’t seem to work anymore. https://key.sour.is/id/me@sour.is
開源免費定時任務管理系統 Gocron
概覽–Gocron 是一個開源免費的定時任務管理系統。它使用 Go 語言開發,是一個輕量級定時任務集中調度和管理系統,用於替代 Linux-crontab,旨在爲開發者及運維人員提供一個高效、輕量級且用戶友好的任務調度解決方案。作爲 Linux-crontab 的現代化替代品,Gocron 不僅繼承了傳統定時任務管理的靈活性,還融入了強大的 Web 界面管理功能,使得任務配置、監控與維護變得前所 ⌘ Read more
Mozilla Bets the Future of the Web is A.I. Generated Content
A.I. website builders, A.I. award banquets, A.I. investments. And Firefox pushed aside. ⌘ Read more
Interesting.. QUIC isn’t very quick over fast internet.
QUIC is expected to be a game-changer in improving web application performance. In this paper, we conduct a systematic examination of QUIC’s performance over high-speed networks. We find that over fast Internet, the UDP+QUIC+HTTP/3 stack suffers a data rate reduction of up to 45.2% compared to the TCP+TLS+HTTP/2 counterpart. Moreover, the performance gap between QUIC and HTTP/2 grows as the underlying bandwidth increases. We observe this issue on lightweight data transfer clients and major web browsers (Chrome, Edge, Firefox, Opera), on different hosts (desktop, mobile), and over diverse networks (wired broadband, cellular). It affects not only file transfers, but also various applications such as video streaming (up to 9.8% video bitrate reduction) and web browsing. Through rigorous packet trace analysis and kernel- and user-space profiling, we identify the root cause to be high receiver-side processing overhead, in particular, excessive data packets and QUIC’s user-space ACKs. We make concrete recommendations for mitigating the observed performance issues.
@prologic@twtxt.net Some criticisms and a possible alternative direction:
Key rotation. I’m not a security person, but my understanding is that it’s good to be able to give keys an expiry date and replace them with new ones periodically.
It makes maintaining a feed more complicated. Now instead of just needing to put a file on a web server (and scan the logs for user agents) I also need to do this. What brought me to twtxt was its radical simplicity.
Instead, maybe we should think about a way to allow old urls to be rotated out? Like, my metadata could somehow say that X used to be my primary URL, but going forward from date D onward my primary url is Y. (Or, if you really want to use public key cryptography, maybe something similar could be used for key rotation there.)
It’s nice that your scheme would add a way to verify the twts you download, but https is supposed to do that anyway. If you don’t trust https to do that (maybe you don’t like relying on root CAs?) then maybe your preferred solution should be reflected by your primary feed url. E.g. if you prefer the security offered by IPFS, then maybe an IPNS url would do the trick. The fact that feed locations are URLs gives some flexibility. (But then rotation is still an issue, if I understand ipns right.)
@prologic@twtxt.net One of your twts begins with (#st3wsda): https://twtxt.net/twt/bot5z4q
Based on the twtxt.net web UI, it seems to be in reply to a twt by @cuaxolotl@sunshinegardens.org which begins “I’ve been sketching out…”.
But jenny thinks the hash of that twt is 6mdqxrq. At least, there’s a very twt in their feed with that hash that has the same text as appears on yarn.social (except with ‘ instead of ’).
Based on this, it appears jenny and yarnd disagree about the hash of the twt, or perhaps the twt was edited (though I can’t see any difference, assuming ’ vs ’ is just a rendering choice).
KubeCon + CloudNativeCon North America 2024 related event deep dive: WasmCon
November 11-12, 2024 Salt Lake City, Utah View the schedule WasmCon is a two-day event focused on all things Web Assembly. This is the first time WasmCon is being held in conjunction with KubeCon + CloudNativeCon North America… ⌘ Read more
Thoguhts on the Resiliency of Web Projects
I just did a massive spring cleaning of one of my servers, trying to clean up what has become quite the mess of clutter. For every website on the server, I either: ⌘ Read more
@prologic@twtxt.net My pod, which is running the same commit you are, does not return an error like that. It returns the same HTML it always has. Try it. I nuked my cache before restarting.
Edit: Oh wait, the plot thickens. I do get an error if I use curl or if I use a web browser that isn’t logged in. That’s good!
yarnd that's been around for awhile and is still present in the current version I'm running that lets a person hit a constructed URL like
@prologic@twtxt.net This does not seem to fix the problem for me, or I’ve done something wrong. I did the following:
- Pull the latest version from
git(I have commit7ad848, same as ontwtxt.netI believe).
make buildandmake install
- Restart
yarnd
- Refresh cache in Poderator Settings
Yet I still see these bogus /external things on my pod when I hit URLs like the one I sent you recently. When I hit such a URL with curl I think it’s giving an error? But in a web browser, the (buggy) response is the same as it was before I updated.
So, this problem is not fixed for me.
yarnd that's been around for awhile and is still present in the current version I'm running that lets a person hit a constructed URL like
@prologic@twtxt.net I believe you are not seeing the problem I am describing.
Hit this URL in your web browser:
https://twtxt.net/external?nick=lovetocode999&uri=https://socialmphl.com/story19510368/doujin
That’s your pod. I assume you don’t have a user named lovetocode999 on your pod. Yet that URL returns HTTP status 200, and generates HTML, complete with a link to https://socialmphl.com/story19510368/doujin, which is not a twtxt feed (that’s where the twtxt.txt link goes if you click it). That link could be to anything, including porn, criminal stuff, etc, and it will appear to be coming from your twtxt.net domain.
What I am saying is that this is a bug. If there is no user lovetocode999 on the pod, hitting this URL should not return HTTP 200 status, and it should definitely not be generating valid HTML with links in it.
Edit: Oops, I misunderstood the purpose of this /external endpoint. Still, since the uri is not a yarn pod, let alone one with a user named lovetocode999 on it, I stand by the belief that URLs like this should be be generating valid HTML with links to unknown sites. Shouldn’t it be possible to construct a valid target URL from the nick and uri instead of using the pod’s /external endpoint?
Listen to Apple Podcasts on the Web
Apple has released a web version of the Podcasts app, allowing anyone to listen to podcasts through the web interface. You can browse through podcasts to find new ones, search podcasts for specific guests or shows, see the ‘Top Charts’, or just have a look at what Apple considers noteworthy. The web version of Podcasts … Read More ⌘ Read more
@bender@twtxt.net I’m not a yarnd user, but automatically unfollowing on 404 doesn’t seem right. Besides @lyse@lyse.isobeef.org’s example, I could imagine just accidentally renaming my own twtxt file, or forgetting to push it when I point my DNS to a new web server. I’d rather not lose all my yarnd followers in a situation like that (and hopefully they feel the same).
Google adds a foldable, smaller Pro model to its Pixel smartphone line-up
The Pixel 9 is joined by three Pro versions, as the web giant also unveils new watches and earbuds. ⌘ Read more
Porting my JavaScript Game Engine to C for No Reason
high_impacttl;dr: high_impact is small game engine for 2D action games. It’s written in C, compiles to Windows, Mac and Linux as well as to WASM for the Web. It’s “inspired by” my original Impact JavaScript game engine from 2010. The name high_impact is a nod to a time when C was considered a high level language.
MIT licensed, source on github: [github.com/phoboslab/high_impact](https://github … ⌘ Read more
How to add OTEL instrumentation to a React Native app
Member post by Jonathan Munz, Senior Software Engineer at Embrace React Native allows developers to build native mobile apps using Javascript and Typescript for both iOS and Android. With a web language as its core and native deployment… ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter July 2024
XMPP Newsletter Banner
Welcome to the XMPP Newsletter, great to have you here again!
This issue covers the month of July 2024.
If you are interested to join the XMPP Standards Foundation as a member, please apply until August 18th, 2024!.
XMPP and Google Summer of Code 2024… ⌘ Read more
Porting my JavaScript Game Engine to C for No Reason
high_impacttl;dr: high_impact is small game engine for 2D action games. It’s written in C, compiles to Windows, Mac and Linux as well as to WASM for the Web. It’s “inspired by” my original Impact JavaScript game engine from 2010. The name high_impact is a nod to a time when C was considered a high level language.
MIT licensed, source on github: [github.com/phoboslab/high_impact](https://github … ⌘ Read more
I setup and switched to Headscale last night. It was relatively simple, I spent more time installing a web GUI to manage it to be honest, the actual server is simple enough. The native Tailscale Android app even works with it thankfully.
Access & Use Apple Maps on the Web with Maps Beta
Apple Maps is now available on the web, just in case you’d like to use a web based interface for Apple Maps instead of the Maps app on iPhone, iPad, or Mac. The introduction of a web interface for Apple Maps also means that Android users and Windows users can access Apple Maps now, if … Read More ⌘ Read more
通過實例理解 Go 訪問和操作數據庫的幾種方式
關係數據庫操作是 Go 應用開發中的重要一環,尤其是 Go Web 應用、微服務等。作爲 Gopher,我們需要了解幾種主流的數據庫訪問和操作方法,以便在項目中做出適當的選擇。我個人在日常開發中較少涉及 CRUD 類應用,因此使用 Go 訪問和操作數據庫的機會並不多,在這方面也算是有一些 “短板”。通過在這篇文章中對數據庫訪問方式進行全面的梳理,我也算是補全一下技能樹,同時也能爲讀者小夥伴提供一些 ⌘ Read more
Go 語言的 Web 開發利器:Templ - HTMX 打造交互式體驗
在 Web 開發領域,Go 語言以其簡潔、高效和強大的併發能力著稱。Templ 和 HTMX 則是與 Go 完美契合的工具,它們分別負責頁面的渲染和交互邏輯,共同打造出現代化的 Web 應用。本文將深入探討 Templ 和 HTMX 的核心概念、使用方法以及如何結合 Go 語言構建出色的 Web 應用。Templ:Go 語言的模板引擎—————-Templ 是 Go 語言自帶的 ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter June 2024
XMPP Newsletter Banner
Welcome to the XMPP Newsletter, great to have you here again!
This issue covers the month of June 2024.
The XSF has been accepted as a hosting organisation at GSoC in 2024 again!
These XMPP projects have received a slot and have kicked-off with … ⌘ Read more
Ladybird Web Browser Developer Attacked by Unhinged, Dishonest Activists
Activists concoct wild, meritless accusations of “Transphobia” and “Human Slavery”. ⌘ Read more