Жопа кота

2 заметки с тегом

API

Труд Всем

С министерством труда что-то совсем ничего не понятно. Решил сделать свою выборку через API.
Почему-то у них 2 сайта
https://trudvsem.ru
https://mintrud.ru/
И на 2 сайтов количество вакансий разное
А по api я получаю в 2 раза меньше вакансий.
Не ясно какое количество вакансий реально все источники выдают разный результат.
Геморрой какой-то

 Нет комментариев    3   10 дн   API   работ

Удаленная публикация постов Joomla

В joomla 4 появился rest API теперь новости можно публиковать удаленно .
Код класса который швыряет JSON в Joomla

import java.io.BufferedWriter;;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;


public class RePostreJ4 {
    private static String TOKEN_KEY = "X-Joomla-Token";
    private static String TYPE_KEY = "Content-Type";
    private static String TYPE_VALUE = "application/json;charset=UTF-8";
    private static String LANGUAGE ="\"language\":\"*\"";
    private String tokenValue;
    private String alias;
    private Integer catid;
    private  String metadesc;
    private String metakey;
    private FTPLoader ftp;
    private ParserText pt;



    private  String title = "";
    private String articletext= "";

    public RePostreJ4(String tokenValue, Integer catid, String metadesc, String metakey,ParserText pt) {
        this.tokenValue = tokenValue;
        this.catid = catid;
        this.metadesc = metadesc;
        this.metakey = metakey;
        this.pt = pt;
        this.title = pt.namePost;
        this.articletext = pt.getTextContent();

        this.alias = FTPLoader.Translator.translitor(pt.fileName);

    }
    public void goPost(String siteName){//Это отправляет пост запрос
        try {
            URL url = new URL(siteName+"/api/index.php/v1/content/articles");
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");

            conn.setRequestProperty("Accept-Charset", "UTF-8");
            conn.setRequestProperty("Content-Language", "ru-RU");

            conn.setRequestProperty(TYPE_KEY,TYPE_VALUE);
            conn.setRequestProperty(TOKEN_KEY,tokenValue);
            conn.setDoOutput(true);
            BufferedWriter out = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream(), "UTF-8"));
            out.write(jsonCreater());
            out.flush();
            out.close();
            System.out.println(conn.getResponseMessage());

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    private String jsonCreater(){ //Этот метод создает строку JSON
        StringBuilder sb = new StringBuilder("{\"alias\":\"");
        sb.append(alias+"\",\"articletext\":\""+clear(articletext)+"\",\"catid\":"+catid+","+LANGUAGE+",\"metadesc\":\""+metadesc
                +"\",\"metakey\":\""+metakey+"\",\"title\": \""+title+"\"}");
        System.out.println(sb);
        return sb.toString();
    }
    private String clear(String stroka){//Это нужен так как если в строке будет " JSON сломаеться
        return stroka.replace("\"","'");
    }


}

Теперь можно постить посты удаленно, и геморрой проходит.

 Нет комментариев    40   2022   API   java   joomla