Comments (2)
It seems this came out of WhiteHouse/api-standards#22, but there wasn't much discussion on the topic.
I was the author of that piece of our document, and it came from my experience building the Sunlight Congress API. Being able to easily and correctly view JSON in-browser was a priority for that API, and non-ASCII characters would render incorrectly in-browser without the charset parameter.
I respect Armin's opinion and keeping complexity low is always a good goal, but unless there are actual interoperability problems with a utf-8 charset, it doesn't outweigh the practical benefit to me.
from api-standards.
Cool, that seems reasonable to me!
I believe that Armin's main criticism of the charset
parameter is that it can be used to encode JSON into charsets that it wasn't originally intended to be encoded into, like latin1
, which basically means that clients that do purely follow the spec (and therefore which don't look at the charset
parameter) would get confused.
However, because your recommendation specifically recommends passing charset=UTF-8
and UTF-8 is an encoding that spec-purist clients expect, I don't believe it will result in any interoperability problems.
Anyhow, thanks for the explanation, it makes a lot of sense. I'm going to close the issue now!
from api-standards.
Related Issues (20)
- Hypermedia APIs HOT 4
- Coordinate with 18F team owners HOT 1
- Standard length of time provided for deprecation, changes? HOT 1
- "Don't use unpredictable keys" (in response JSON) HOT 1
- Possibly include link header in pagination section? HOT 3
- Specify date format standard HOT 5
- under_score for JSON keys? HOT 6
- avoid using "entropy"
- for discussion: HTTPS everywhere HOT 1
- expand acceptable input param vehicles to include full URIs
- What data should go in headers, and what data in the response body HOT 14
- Stacktraces in production HOT 1
- New APIs should require SNI of their users
- Request to change description to make it clearer for users HOT 4
- Data envelopes and format of `results` attribute HOT 3
- This repo should be converted to 18F Pages HOT 9
- Shouldn't this repo have a LICENSE? HOT 2
- Singluar vs. Plural Nouns HOT 1
- FBOpen links returning a 404 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from api-standards.