Я использую внутреннюю процедуру для создания счетов из моей базы данных. При использовании .NET Core
. Я установил Xero.Api.SDK.Core v. 1.1.4
Я считаю, что документация Xero довольно трудна для понимания и немного обновлена. Я заглянул в репозиторий Github , и они относятся только к OAuth 2.0
. В моем случае я не хочу никакого взаимодействия с пользователем, потому что мне нужен фоновый процесс.
Я создал учетную запись в качестве разработчика и демонстрационную компанию для тестирования.
Я немного погуглил и нашел на сайте пример, как подключиться к api (я не смог найти никаких подробностей в документации Xero).
X509Certificate2 cert = new X509Certificate2(@"public_privatekey.pfx", "password");
var api = new Xero.Api.Example.Applications.Private.PrivateAuthenticator(cert);
var private_app_api = new XeroCoreApi("https://api.xero.com",
new PrivateAuthenticator(cert),
new Consumer("ClientId", "ClientSecret"),
null, null);
Сейчас , Подумал, надо использовать api. Я попытался прочитать список контактов:
var contacts = private_app_api.Contacts;
var list = contacts.FindAsync().Result;
Результатом является следующая ошибка:
System.AggregateException: 'Произошла одна или несколько ошибок. (oauth_problem = consumer_key_unknown & oauth_problem_advice = Consumer% 20key% 20was% 20not% 20recognized) '
Inner Exception UnauthorizedException: oauth_problem = consumer_key_unknown & oauth_problem = consumer_key_unknown & oauth_problem_advice * 1027 Я скачал репозиторий с Github. Я копирую и вставляю ClientId и ClientSecret и запускаю тесты. Ни один тест не пройден!
Моя цель - создать контакт или найти его в списке, создать счет и сохранить счет в PDF формат в моем хранилище.
Как я могу это сделать? Есть ли для этого какой-нибудь пример?
PS: На форуме разработчиков логин не работает, а коллекция Postman устарела и тоже не работает.
Обновление
Я был в отчаянии. Пробовал подключиться к apis другим способом с XOauth
. Наихудший. Я создал соединение, как объясняет Xero на Github .
Когда я пытаюсь подключиться к
xoauth connect
в моем браузере открывается новая вкладка и ...
Postman Update
Я выполнил шаги с Почтальон . Открыл коллекцию в почтальоне. В среде я обновил client_id и client_secret с сайта Xero Developer, а затем следующие конфигурации:
re_directURI: https://developer.xero.com
scopes: offline_access profile email учет. транзакции
URL авторизации: https://login.xero.com/identity/connect/authorize
Токен доступа: https://identity.xero.com/connect/token
Я открыл Начать работу api, Сгенерировать токен , и я дал тот же результат.