¿Existe una CDN disponible públicamente que aloje JSON2?

78

Es bien sabido que Google y Microsoft alojan varias bibliotecas de JavaScript comunes en sus CDN (redes de distribución de contenido). Desafortunadamente, ninguno parece albergar JSON2.js .

Soy consciente de que podría cargar una copia de JSON2.js en mi servidor y servirlo yo mismo, pero hay varias ventajas que ofrecen las CDN que me gustaría aprovechar.

Entonces, con eso en mente, ¿existen CDN disponibles públicamente que alojen JSON2? Si no es así, ¿alguna idea de por qué? ¿Existe algún tipo de motivo de derechos de autor?

Xavi
fuente

Respuestas:

60

Pagar cdnjs.com

http://cdnjs.com/libraries/json2/

También podría valer la pena investigar Json3

http://cdnjs.com/libraries/json3/

ACTUALIZACIÓN : Parte de la información estaba desactualizada, se cambió a mejores enlaces.

Dve
fuente
@Xavi: no en CDNJS. Puede sugerirlo en el sitio web de cdnjs
Dve
¡cdnjs parece una iniciativa genial! Los chicos también son muy receptivos a los comentarios. Gracias por señalar esto.
webmat
webmat: No se preocupe. Es una gran idea. Lo he estado usando por un tiempo. tampoco he visto ningún tiempo de inactividad.
Dve
12
Thomas de cdnjs.com aquí con dos razones rápidas por las que no hay una versión reducida. 1) Es posible que el guión no funcione como pretendía el autor utilizando el método de minificación que elegimos. 2) Como paso de seguridad, nos aseguramos de que todas las sumas de comprobación de archivos coincidan con los archivos alojados por los autores originales para que las actualizaciones enviadas por la comunidad no puedan contener código minificado con formato incorrecto. Así que por ahora eso nos deja alojando la versión no minificada alojada de Crockfords; github.com/douglascrockford/JSON-js/raw/master/json2.js lol ¿no puedes poner nuevos caracteres de línea en los comentarios?
Thomas Davis
3
Solo para su información: serví json2 de cdnjs.com en mi proyecto reciente. Obtuve el enlace de esta misma página de stackoverflow. A algunos de los IE no les gustó esto. No pude entender por qué, ya que todas eran versiones diferentes de la 7 a la 9. Algunos IE estaban interpretando json2 en formato KOI-7. Como resultado, los usuarios recibían un error de JavaScript: "JSON no está definido". Intenté configurar el atributo @charset de la etiqueta del script en UTF-8 y no resolvió el problema. Mi solución fue servir json2 junto con mis otros archivos js. (Comprimido y minificado). No dude en ponerse en contacto conmigo si tiene alguna pregunta.
Dimskiy
5

Creo que probablemente es demasiado pronto para esperar que las grandes CDN empiecen a hacer esto. Cuando hay suficientes sitios que utilizan una biblioteca, los beneficios se vuelven claros: mayor disponibilidad, uso más frecuente, menores solicitudes de los clientes, mayor rendimiento para el usuario final. Si solo unos pocos sitios lo usan, las posibilidades de que el cliente ya tenga una copia en su caché son bajas y se pierden todos los aumentos de rendimiento. Entonces, todo lo que queda es que MS y Google compensen sus cargos de ancho de banda, lo cual no es su intención. Por tanto, la solución es conseguir que más desarrolladores utilicen la biblioteca.

Además, la biblioteca es tan pequeña. El código sigue siendo de solo 3,5 KB utilizando una minificación conservadora. A modo de comparación, jQuery es de 24 KB y ext-core es de 29 KB. Personalmente, recomendaría plegar la biblioteca en el JS base de su propio sitio y aumentar el rendimiento allí. Al menos hasta que haya una aceptación más amplia.

Además, es gracioso que hubiera esperado que la biblioteca JSON también estuviera alojada en Yahoo, pero no puedo encontrarla. Me refiero a que Crockford trabaja allí.

Andrés
fuente
Esos son puntos justos. El JSONobjeto se está convirtiendo en estándar en muchos navegadores, por lo que la necesidad de JSON2.jsdeclinar. ¡Además, la biblioteca es pequeña! Es solo que me he acostumbrado a crear pequeñas aplicaciones JS independientes que puedo cargar rápidamente o enviar por correo electrónico a las personas. De vez en cuando termino usando el JSONobjeto. En esos casos, mi aplicación JS no funciona en IE6 / 7 o ya no es autónoma. = (
Xavi
4

Thomas de cdnjs.com aquí con dos razones rápidas por las que no hay una versión reducida.

1) Es posible que el guión no funcione como pretendía el autor utilizando el método de minificación que elegimos. 2) Como paso de seguridad, nos aseguramos de que todas las sumas de comprobación de archivos coincidan con los archivos alojados por los autores originales para que las actualizaciones enviadas por la comunidad no puedan contener código minificado con formato incorrecto.

Así que por ahora eso nos deja alojando la versión no minificada alojada de Crockfords; https://github.com/douglascrockford/JSON-js/raw/master/json2.js

Thomas Davis
fuente
2

Hay ahora.

Douglas Crockford puso recientemente JSON2 en github, esta URL siempre se vinculará a la versión más reciente.

Editar: No es una buena idea usar este método, vea mi comentario a continuación.

DannyLane
fuente
¿Debería https ser http para las páginas que no ofrecen contenido de forma segura? es decir, ¿no "mezclar contenido seguro e inseguro"?
Shaggy Frog
5
Pensándolo bien, no creo que sea una buena idea usar github como un cdn, vea la respuesta a esta pregunta: stackoverflow.com/questions/5502540/…
DannyLane
4
@ShaggyFrog Un truco: puede eliminar el http:or https:, y el script se cargará utilizando el método correcto para ese sitio: //github.com/douglascrockford/JSON-js/raw/master/json2.js
Web_Designer
@DannyLane, debe editar su respuesta con la información sobre no usar GitHub como CDN para JS.
asimétrico
No estoy seguro de por qué esta respuesta está siendo rechazada recientemente, la corrigí para decir que no usara este método hace casi 3 años.
DannyLane