Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2024, 23:02   #1
KaizerSX
Новичок
Джуниор
 
Регистрация: 04.11.2017
Сообщений: 3
По умолчанию Не удается авторизоваться через API Jira , хотя через Postman авторизоваться получается

Добрый день.

Через Postman авторизоваться получается (ниже скриншот), а через программу нет (ниже код), получаю ошибку 401 (ниже скриншот). Подскажите пожалуйста в чем может быть проблема?
https://i.sstatic.net/H3sraLdO.png

Код:
public class RestClient {
 
    private String server = "company.com";
    private RestTemplate rest;
    private HttpHeaders headers;
    private HttpStatusCode status;
 
    public RestClient() {
 
        this.rest = new RestTemplate();
        this.headers = new HttpHeaders();
        headers.add("Content-Type", "application/json");
        headers.add("Accept", "*/*");
        //headers.add("Accept-Encoding","gzip, deflate, br");
        headers.add("Connection","keep-alive");
 
 
        String basicAuth = "Basic " + new String(Base64.getEncoder().encode("user:password".getBytes()));
        System.out.println(basicAuth);
 
        headers.add("Authorization", basicAuth);
 
    }
 
   public String get(String uri) {
 
        HttpEntity<String> requestEntity = new HttpEntity<String>("", headers);
        ResponseEntity<String> responseEntity = rest.exchange(server + uri, HttpMethod.GET, requestEntity, String.class);
        this.setStatus(responseEntity.getStatusCode());
 
        System.out.println(requestEntity.getBody());
        return responseEntity.getBody();
    }

Вот ошибка:

https://www.cyberforum.ru/attachment...760d1728113148
KaizerSX вне форума Ответить с цитированием
Старый 08.10.2024, 18:30   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,889
По умолчанию

Проверьте строку закодированного значения из постмана (там есть консоль , через которую идёт вывод всей информации о запросе) и из программы, велика вероятность, где-то ошибаетесь с кодом, либо байтами/кодировкой. То есть в любом случае установите сперва, что значение на одних и тех же юзере и пароле совпадают.
Также проверьте куки, может в постмане их когда-то установили, и он их добавляет в запрос, а вы нет, и в целом сравните все возможные поля и заголовки.
phomm вне форума Ответить с цитированием
Старый 09.10.2024, 11:53   #3
KaizerSX
Новичок
Джуниор
 
Регистрация: 04.11.2017
Сообщений: 3
По умолчанию

Цитата:
Сообщение от phomm Посмотреть сообщение
Проверьте строку закодированного значения из постмана (там есть консоль , через которую идёт вывод всей информации о запросе) и из программы, велика вероятность, где-то ошибаетесь с кодом, либо байтами/кодировкой. То есть в любом случае установите сперва, что значение на одних и тех же юзере и пароле совпадают.
Также проверьте куки, может в постмане их когда-то установили, и он их добавляет в запрос, а вы нет, и в целом сравните все возможные поля и заголовки.

Добрый день.

1)Открыл консоль постман и скопировал отттуда в программу те же Headers +их значения , что и в постмане, но, увы,резульатата нет.

2)Логин и пароль совпадают на 1000% + проверил специально, что логин и пароль в закодированном виде передаются в заголовок Authorization.

3) На счет кукис расскажите пожалуйста более подробно. Плохо знаком с ними.

В постмане при первом запросе нет куки, а во втором запросе он подставляем их сам.

Куки нужно обязательно указывать в request? Если да , то откуда их брать?

Скажите какой кусок кода показать вам, чтобы вы могли более детально ознакомиться с проблемой? Или нужен весь код?

Плюс хотел уточнить версия Spring имеет большое значение?


вот мой POM:


Код:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.3.4</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>pirp2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>pirp2</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>17</java.version>
        <start-class>com.example.pirp2.PiroApp</start-class>

        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>

    </properties>

    <dependencies>


        <dependency>
            <groupId>net.rcarz</groupId>
            <artifactId>jira-client</artifactId>
            <version>0.5</version>
        </dependency>




        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20240205</version>
        </dependency>


        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mustache</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>


        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <scope>runtime</scope>
        </dependency>


        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>


        <dependency>
            <groupId>jakarta.persistence</groupId>
            <artifactId>jakarta.persistence-api</artifactId>
            <version>3.1.0</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-commons</artifactId>

        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>

        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>



        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>5.2.3</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>


    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>
KaizerSX вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу понять как авторизоваться через requests greenman2020 Python 1 12.11.2020 13:40
Не получается авторизоваться на сайте ucoz corsar1991 Работа с сетью в Delphi 7 08.01.2014 01:16
Авторизоваться на сайте ucoz через delphi xraser Общие вопросы Delphi 5 12.12.2010 17:47
Авторизоваться на IP.B Kottik Работа с сетью в Delphi 19 21.08.2009 23:13