Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.85/40: Рейтинг темы: голосов - 40, средняя оценка - 4.85
15 / 13 / 3
Регистрация: 20.02.2018
Сообщений: 446

Не работают урл-адреса в JS функциях на рабочем сервере, не тесте все работало

10.07.2021, 14:35. Показов 8079. Ответов 20

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Проект ASP NET CORE MVC 3. Сервер IIS10.

В проекте в файлах представлениях я прописывал ссылки на файлы с JS функциями следующем образом:
JavaScript
1
2
3
4
5
@section Scripts {
 
    <script type="text/javascript" src="~/js/JS_Create_Edit_Friend.js"></script>
    @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
В самом файле прописываю:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// Обновление списка улиц после выбора города
$(function () {
    $("#CityId").change(function () {
        var formData = { 'CityId': Number.parseInt($('#CityId').val()), 'Name': $('#CityId>option:selected').text() };
        $.ajax({
           // url: "http://localhost:18246/api/API/searchStreets",
            url: "/api/API/searchStreets",
            headers:
            {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
                'RequestVerificationToken': $('#RequestVerificationToken').val()
            },
            type: 'POST',
            dataType: "json",
            data: JSON.stringify(formData),
            success: function (data) {
 
                dataFilling(data, 'idStreet', 'name', '#StreetId', '<option/>');
 
                // Генерация события для элемента Select
                let elemSelectHouse = document.querySelector('#StreetId')
                elemSelectHouse.selectedIndex = 0;
                const event = new Event("change");
                elemSelectHouse.dispatchEvent(event);
            },
            error: function (result, status, er) {
                alert("error: " + result + " status: " + status + " er:" + er);
            }
        });
 
    });    
});
На тесте все работает на проде выдает ошибку, что не найден контроллер:
POST http://localhost/api/API/searchStreets 404 (Not Found) jquery.min.js:2
Заголовки:
General
Request URL: http://195.226.xxx.x0/api/API/searchStreets
Request Method: POST
Status Code: 404 Not Found
Remote Address: 195.226.xxx.x0:80
Referrer Policy: strict-origin-when-cross-origin
Request
Accept: application/json
Accept-Encoding: gzip, deflate
Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
Cache-Control: no-cache
Connection: keep-alive
Content-Length: 42
Content-Type: application/json
Host:195.226.xxx.x0
Origin: http://195.226.xxx.x0
Pragma: no-cache
Referer: http://195.226.xxx.x0/collectVoters/Friends/Edit/2
RequestVerificationToken: CfDJ8E_6DbN7jdpPgMFyLYN6J0OrMxQS9aM7M67r Vqjwjxa4AwxAWpaCKSmXLo3SUhxhSOxaDNbIonsG VHeh5STS0Q0U0bq6R-dPdWyohdIlwBaNRRVJ5iw8t2U2sulQfFdcegAl-A54L3H0vxaMu_-jl7Zmc9TNII1R3lXPErLRDcvpzKZdf1fPkqgmPH_ wSb5o_w
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
X-Requested-With: XMLHttpRequest
Контроллер обрабатывающий запрос от данной JS функции:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[Route("api/[controller]")]
    [ApiController]
    [Produces("application/json")]
    public class APIController : ControllerBase
    {
        private readonly VoterCollectorContext _context;
 
        public APIController(VoterCollectorContext context)
        {
            _context = context;
        }
 
 
        [HttpPost("searchStreets")]
        [ValidateAntiForgeryToken]
        public IActionResult SearchStreets(CityDTO citySelected)
        {
            List<Street> streets =  _context.Street.Where(s => s.CityId == citySelected.CityId).ToList<Street>();
            
            if (streets.Any())
            {
                List<StreetDTO> streetsDTO = streets.Select(s => new StreetDTO { IdStreet = s.IdStreet, Name = s.Name }).ToList();
                return Ok(streetsDTO);                
            }
            return NoContent();
        }
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.07.2021, 14:35
Ответы с готовыми решениями:

Найти все УРЛ-адреса в тексте
Есть вот такая регулярка: var template = /^(?:(?:https?|http|ftp)://(?:{1, 32}(?::{1, 32})?@)?)?(?:(?:{1,...

500 ошибка на сервере, хотя в локалке все работало нормально
выложил проект на сервер, выскакивает такая ошибка. на локалке все нормально. с чем может быть связано и как исправить?

Не работают ссылки на сайте. При тесте на денвере все работает, а на хостинге нет
Сделал сайт для тренировки, тестил на денавере все работало отлично. Выложил на хостинг, при попытке пройти по ссылке в меню вылазит...

20
800 / 583 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
13.07.2021, 12:54
Лучший ответ Сообщение было отмечено Volodya_ как решение

Решение

Студворк — интернет-сервис помощи студентам
Volodya_,
... я для таких вариантов использовал следующую конструкцию в javascript-e

JavaScript
1
2
3
4
var myurl = "http://www.mydomain.com/api/";
    if (window.location.href.substring(0, 16) == "http://localhost") {
      myurl = "http://localhost:5002/api/";
    }
.. т.е. если окно браузера открыто в тесте на localhost - то директим на localhost, иначе - на домен ... попробуйте что-либо подобное ...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.07.2021, 12:54

Как создать файл на рабочем столе так, что бы работало на Linux и на Windows?
Собственно сабж. Я думаю вопрос сводится к тому, каким образом узнать что за ОС у пользователя и как узнать имя его профиля. ...

Cоздание файла на сервере,указывая урл.
Помогите с казалось бы простой проблемой,не успеваю разобраться,сорки поджимают. Необходимо на сервере создать файл,img,имя которого буду...

Вытащить имя файла из УРЛ адреса страницы
Имеется массив: char uri; ,содержащий url адрес, например: http://www.sitename.com/filename.fileformat Необходимо достать имя...

Настройка nginx - идут GET-запросы урл-ов соседнего сайта на сервере
Выделенный сервер на Debian, на котором много сайтов (bind9, nginx+php-fpm). Столкнулся с очень странной проблемой. В логах nginx...

Не работают вместе 4 модуля RAM, раньше работало
есть четыре слота оперативки .в каждом стояли модули .всё работало.сейчас работает только одна пара.причём менял поочерёдно и модули памяти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru