funkyfuture / m4p0-rs-metadata-import

GNU Affero General Public License v3.0
0 stars 0 forks source link

kodierungsfehler im json #18

Closed fdiehr closed 4 years ago

fdiehr commented 4 years ago

hey, ich hab nochmal in das json geguckt und es gibt immer noch kodierungsfehler wie: Strohb\u00e4r

funkyfuture commented 4 years ago

das müsste nach meinem wissen korrekt sein, weil json immer eine bytesequenz ist und kein unicode. und das erzeugt auch einen unicode-string mit der JS-vm im browser:

var json = '{"result":"Strohb\u00e4r"}';
var obj = JSON.parse(json)
console.log(obj)
Object { result: "Strohbär" }
fdiehr commented 4 years ago

öh, okay. komisch. warum seh ich das denn aber im browser? guck mal hier: https://researchspace.curving.space/resource/?uri=Template%3Ahttps%3A%2F%2Fwww.museum4punkt0.de%2Fcatalogue%2Fontology%2FMuseumObject

funkyfuture commented 4 years ago

na, weil das eben noch nicht geparsed ist. es ist an der stelle nur eine (nicht-unicode-)zeichenkette.

fdiehr commented 4 years ago

okay, versteh ich aber noch nicht ganz: wann wird das geparst? beim upload? (und deswegen ist das jetzt noch nicht zu sehen, weil es noch der alte upload ist?)

funkyfuture commented 4 years ago

wann wird das geparst?

das muss eine anwendung machen (im browser mit JSON.parse), dazu ist es ja gedacht. json ist ein austauschformat, nix was zur anzeige gedacht ist.

ich hab mal noch ein bißchen rumgelesen. es ist wohl so, dass json auch als unicode kodiert sein könnte, encoder-implementierungen das zur gewährleistung von kompatibilität aber meist sein lassen. ich hab auch probiert was passiert, wenn man bei der python-stdlib-implementierung das ensure_ascii-argument auf False setzt, da kommt das genauso raus.

funkyfuture commented 4 years ago

vorschlag: ergänze doch einfach die überschrift, ungefähr so: Kataloginformationen (JSON), dann steht genauer drüber was oder vielmher wi es ist.

kannst du zufällig den ganzen code der react-komponente, die da benutzt wird, bereit stellen? dann könnte ich, falls ich shcnell damit klar kommen sollte, schauen, dass die tabelle entspechend dem json expandiert wird.

fdiehr commented 4 years ago

ah okay, dacht e mir, dass es durch den browser gemacht wird, hatte mich dann nur gewundert, dass es chrome nicht macht.

vorschlag: ergänze doch einfach die überschrift, ungefähr so: Kataloginformationen (JSON), dann steht genauer drüber was oder vielmehr wi es ist.

ja, kan ich machen versteht nur keiner von "meinen" anwendern. kann mir dann aber auch egal sein ;)

kannst du zufällig den ganzen code der react-komponente

guck mal hier: https://researchspace.curving.space/resource/Help:SemanticTable nutzt das was? hey, aber wenn das jetzt zu aufwändig ist, dann ist das auch okay. kein problem. dann lassen wir das einfach so, wie es ist.

funkyfuture commented 4 years ago

hatte mich dann nur gewundert, dass es chrome nicht macht.

auch die JS engine in Chrome macht das, aber nicht der html-renderer. der verarbeitet html, nicht json.

wenn das jetzt zu aufwändig is

ich denke ja.