Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
webrpc
webrpc is a schema-driven approach to writing backend services for modern Web apps and networks
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
I don’t know what OP thinks is the reason, but the actual reason is CORS.
Web Devs (such as me) have asked for e.g. DELETE as an acceptable formmethod (e.g. https://github.com/whatwg/html/issues/3577) however WHATWG always pushes back citing security concerns such as CORS.
I suspect this is not what OP had in mind since it is trivial to send a DELETE request with a simple JavaScript:
Active use is really irrelevant if you only plan on using it inside a company, because you can implement a client and server within 30 mins to an hour, no external tools needed. The spec is clear and readable. It's excellent. We use it with a TypeScript codebase and just share the interfaces for the services in a monorepo.
If you want a more advanced implementation with type inference for Typescript you can use this: https://github.com/shekohex/jsonrpc-ts
I'd still recommend implementing your own, my own implementation is based off the one above.
For those in Security Theatre of HTTP APIs, I found this also useful:
https://github.com/yosriady/api-development-tools
> * Human readable
Computers are the main consumers of APIs, and ISO 8601 is far from machine-readable.
For example, in Elixir, DateTime.from_iso8601/1 won't recognize "2022-03-12T07:36:08" even though it's valid. I had to rewrite a chunk of Python's radidjson wrapper to 1-9 digit fractional seconds (1).
I'm willing to bet 99% of ISO8601 will fail to handle all aspects of the spec. So when you say "ISO8601" what you're really saying is "our [probably undocumented, and possibly different depending on what system you're hitting] version of the ISO-86001 spec."
(1) https://github.com/python-rapidjson/python-rapidjson/pull/13...
>Sometimes, I feel that we ought to have a simple protocol, on top of HTTP, to simply do remote procedure calls and throw out all this HTTP verbs crap. Every request is a http POST, with or without any body and the data transfer is in binary. So that objects can be passed back and forth between client and server.
https://github.com/asad-awadia/indie-rpc
Related posts
- Bebop introduces JSON-Over-Bebop for fast runtime type validation of raw JSON in Typescript; faster than Zod and other alternatives
- Introducing Tempo: low latency, cross-platform, end-to-end typesafe APIs
- TypeScript type safety with GO
- Fast, Typesafe Binary Serialization
- Bebop v3: a fast, modern replacement to Protocol Buffers