Знак плюс преобразуется в + в nopcommerce 41, но превращается в 42beta

Мой веб-сайт создан с помощью nopcommerce41. Символы «+» заменяются на + во время выполнения. Все работает нормально, кроме этой проблемы.

Пример: результаты поиска Google отображают URL-адрес в виде www.demo.com?search=+apple, но поисковая система Bing отображает тот же URL-адрес в виде www.demo.com?search=+apple.

Если пользователь приходит из поисковой системы Bing, пользователь не может найти ожидаемый результат. теперь я сравнил код обеих версий nopcommerce41 и nopcommerce42beta, и результат такой, как показано ниже:

view-source:http://nop42beta-001-site1.ftempurl.com/ (this site into 4.2beta)
e.g. <li class=facebook><a href=//www.facebook.com/+nopCommerce target=_blank>Facebook</a>

view-source:http://demo.nopcommerce.com/ (this site into 4.1)
e.g. <a href="https://plus.google.com/&#x2B;nopcommerce" target="_blank">Google+</a>

Команда nopcommerce уже исправила эту проблему в nopcommrce 4.2beta, но я не хочу обновлять свой проект. Может ли кто-нибудь помочь мне решить эту проблему?

Об этой проблеме уже сообщалось в разделе разработки, но это проблематичная ошибка, поэтому я разместил ее здесь. https://www.nopcommerce.com/boards/t/62489/plus-sign-converts-to-x2b-in-nopcommerce-versions-running-on-net-core.aspx

один пример, чтобы понять эту проблему

one more example as below:-

In a Index.chtml file i have write code

@{ 
    Layout = null;
    var test1 = "/+apple";
}

<a href="/+apple">Sangeet1</a>
<a href="@test1">Sangeet2</a>



now i have run project then i got result as below

view-source:http://localhost:15543/


<a href="/+apple">Sangeet1</a>
<a href="/&#x2B;apple">Sangeet2</a>

вторая динамическая строка + символ преобразуется в + (шестнадцатеричный код символа Unicode), но первое статическое значение не преобразуется.


person Sangeet Shah    schedule 03.05.2019    source источник
comment
Проблема решена. проблема с использованием HttpCompression(AddNopWebMarkupMin) решена. этот метод сжимает код, а также предотвращает преобразование в шестнадцатеричный код символов Unicode. public class NopMvcStartup : INopStartup { // добавляем сервисы WebMarkupMin в контейнер сервисов services.AddNopWebMarkupMin(); } вышеуказанный метод необходимо включить в NopMvcStartup, чтобы решить эту проблему.   -  person Sangeet Shah    schedule 09.05.2019


Ответы (1)


nocommerce является открытым исходным кодом, вы можете найти набор изменений, который устраняет вашу проблему, и собрать версию 4.1 с этим конкретным исправлением.

person Bacon    schedule 06.05.2019
comment
Я уже проверил все коммиты nopcommerce 4.2beta, но не нашел изменений, связанных с этой проблемой. - person Sangeet Shah; 07.05.2019