# Emoji Picker non utilizza URL CDN per le emoji personalizzate

**URL:** https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404
**Category:** Bug
**Tags:** emoji
**Created:** [25 Aprile 2025, 7:28am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404 "2025-04-25T07:28:22Z")
**Posts on this page:** 12
**Page:** 1

<div class="post-metadata">

### Author: ![lava](https://avatars.discourse-cdn.com/v4/letter/l/a4c791/32.png) [@lava](https://meta.discourse.org/u/lava)
#### Post date: [25 Aprile 2025, 7:28am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/1 "2025-04-25T07:28:22Z")

</div>

## Descrizione

I percorsi delle emoji standard non vengono convertiti in URL CDN, mentre i percorsi delle emoji dell’amministratore vengono convertiti correttamente.

## Evidenza

Controller standard (nessuna conversione CDN):

> <https://github.com/discourse/discourse/blob/1d7c1eca27e1f3063374162e7765fbed5442ffe5/app/controllers/emojis_controller.rb#L5>

Controller amministratore (conversione corretta utilizzando EmojiSerializer):

> <https://github.com/discourse/discourse/blob/1d7c1eca27e1f3063374162e7765fbed5442ffe5/app/controllers/admin/emoji_controller.rb#L5>

I percorsi delle emoji standard dovrebbero essere convertiti in URL CDN come i percorsi delle emoji dell’amministratore.

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [25 Aprile 2025, 8:06am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/2 "2025-04-25T08:06:49Z")

</div>

Vedi questi URL utilizzati da qualche parte nell’interfaccia utente? Sospetto che vengano convertiti in URL CDN nell’app JS prima di essere visualizzati.

---

<div class="post-metadata">

### Author: ![lava](https://avatars.discourse-cdn.com/v4/letter/l/a4c791/32.png) [@lava](https://meta.discourse.org/u/lava)
#### Post date: [25 Aprile 2025, 8:14am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/3 "2025-04-25T08:14:14Z")

</div>

Ho verificato e posso confermare che le emoji utilizzano URL S3 direttamente (a partire da `//`) nell’output renderizzato, non URL CDN.

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [25 Aprile 2025, 8:15am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/4 "2025-04-25T08:15:23Z")

</div>

Su quale pagina vedi questo?

---

<div class="post-metadata">

### Author: ![lava](https://avatars.discourse-cdn.com/v4/letter/l/a4c791/32.png) [@lava](https://meta.discourse.org/u/lava)
#### Post date: [25 Aprile 2025, 8:20am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/5 "2025-04-25T08:20:19Z")

</div>

Puoi vederlo nella pagina di composizione del post quando usi il selettore di emoji. Quando le emoji personalizzate vengono caricate, utilizzano direttamente gli endpoint S3, come:\n\n`https://cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/1/d/1de8f76096f76cf393640bdcff387ec9ae33dd3e.gif`\n\nCiò dimostra che i percorsi non vengono convertiti in URL CDN come previsto.

---

<div class="post-metadata">

### Author: ![lava](https://avatars.discourse-cdn.com/v4/letter/l/a4c791/32.png) [@lava](https://meta.discourse.org/u/lava)
#### Post date: [25 Aprile 2025, 8:23am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/6 "2025-04-25T08:23:48Z")

</div>

![image](https://global.discourse-cdn.com/meta/original/4X/3/3/8/338ea259e7f7621d12b9028bdfd2dca8268b9618.jpeg)  
 ![image](https://global.discourse-cdn.com/meta/original/4X/b/9/9/b993c292a9d782f9995cdad679e84d93bb350ef9.png)

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [28 Aprile 2025, 6:28am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/7 "2025-04-28T06:28:54Z")

</div>

> [@lava](#):
>
> Questo dimostra che i percorsi non vengono convertiti in URL CDN come previsto.

Test delle emoji personalizzate :awthanks:

⬆ questo viene distribuito dalla CDN S3… Abbiamo un problema con il picker stesso @j.jaffeux

 ![L'immagine mostra una pagina di risultati di ricerca che visualizza varie emoji di faccine sorridenti in una sezione denominata "SMILEYS AND EMOTION". (Sottotitolato dall'IA)](https://global.discourse-cdn.com/meta/original/4X/7/2/6/726550f200e9addf18bc33d5282c0014cc81eba3.png)

Non sta utilizzando la CDN S3 per le emoji personalizzate

Questa interfaccia utente sta utilizzando la CDN S3

 ![Questa immagine mostra uno screenshot di un menu a comparsa di completamento automatico con prefisso "badger", che elenca diversi termini suggeriti, tra cui "badminton", "badpokerface", "supervillain" e "-1". (Sottotitolato dall'IA)](https://global.discourse-cdn.com/meta/original/4X/c/c/1/cc1ead94fd479ac919377eebdd28f04ee10112ff.png)

Quindi questo è molto specifico per il picker delle emoji, migliorando il titolo qui.

---

<div class="post-metadata">

### Author: ![j.jaffeux](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/j.jaffeux/32/60297_2.png) [@j.jaffeux](https://meta.discourse.org/u/j.jaffeux)
#### Post date: [28 Aprile 2025, 5:39pm UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/8 "2025-04-28T17:39:00Z")

</div>

Grazie, questo dovrebbe risolvere il problema:

> <https://github.com/discourse/discourse/pull/32494>
>
> This will allow the CDN to be used for custom emojis.

---

<div class="post-metadata">

### Author: ![lava](https://avatars.discourse-cdn.com/v4/letter/l/a4c791/32.png) [@lava](https://meta.discourse.org/u/lava)
#### Post date: [29 Aprile 2025, 2:49am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/9 "2025-04-29T02:49:05Z")

</div>

Grazie per la tua PR che abilita l’uso della CDN per le emoji personalizzate.

Mentre la tua correzione frontend richiede correttamente gli indirizzi CDN delle emoji, sono preoccupato per la sicurezza del backend.  
L’endpoint `https://meta.discourse.org/emojis.json` espone ancora URL sorgente S3 come `//cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/original/3X/6/1/61e481320406f0f82ed780db3f04056128191613.png`, che potrebbero potenzialmente portare ad abusi malevoli e a fatturazione S3 eccessiva.

Per una maggiore sicurezza, suggerisco di restituire direttamente gli indirizzi CDN, in modo simile a come vengono gestite le emoji non personalizzate.

Ecco il mio tentativo di correggere il codice:

```ruby
class EmojisController < ApplicationController
  def index
    emojis = Emoji.allowed.group_by(&:group)
    
    emojis.each do |_, emoji_list|
      emoji_list.each do |emoji|
        emoji.url = Discourse.store.cdn_url(emoji.url) if emoji.url.present?
      end
    end
    
    render json: MultiJson.dump(emojis)
  end
  def search_aliases
    render json: MultiJson.dump(Emoji.search_aliases)
  end
end

```

---

<div class="post-metadata">

### Author: ![j.jaffeux](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/j.jaffeux/32/60297_2.png) [@j.jaffeux](https://meta.discourse.org/u/j.jaffeux)
#### Post date: [29 Aprile 2025, 5:46am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/10 "2025-04-29T05:46:41Z")

</div>

Sì, so che lo facciamo direttamente per le emoji non personalizzate in emoji.rb, cosa che preferirei rispetto al controller. Voglio assicurarmi che ciò non causi problemi, quindi per ora ho apportato la correzione più semplice, ma approfondirò in futuro.

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [3 Giugno 2025, 6:18am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/11 "2025-06-03T06:18:27Z")

</div>

Chiudo perché il problema originale è stato risolto, sentiti libero di aprire un’altra richiesta di funzionalità per il follow-up.

Questi asset sono minuscoli e generalmente pubblici, il rischio sembra basso.

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [3 Giugno 2025, 6:18am UTC](https://meta.discourse.org/t/emoji-picker-is-not-not-using-cdn-urls-for-custom-emojis/363404/12 "2025-06-03T06:18:43Z")

</div>


