This commit is contained in:
parent
bb195777c3
commit
7a7d27c7ae
79
api/endpoints/bspb/index.ts
Normal file
79
api/endpoints/bspb/index.ts
Normal file
@ -0,0 +1,79 @@
|
||||
const fs = require('node:fs')
|
||||
const https = require('node:https')
|
||||
|
||||
// URL, на который отправляется запрос
|
||||
const url = 'https://pgtest.bspb.ru:5443/order'
|
||||
|
||||
// Данные для отправки в формате JSON
|
||||
const data = {
|
||||
order: {
|
||||
typeRid: 'Purchase',
|
||||
amount: 100,
|
||||
currency: 'RUB',
|
||||
title: 'Название заказа',
|
||||
description: 'Описание заказа',
|
||||
},
|
||||
}
|
||||
|
||||
const options = {
|
||||
method: 'POST',
|
||||
// Путь к ключу и сертификату
|
||||
key: fs.readFileSync('./crt/bspb_test.key'),
|
||||
cert: fs.readFileSync('./crt/bspb_test.pem'),
|
||||
// Установка заголовков для отправки JSON и базовой авторизации
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': `Basic ${Buffer.from('' + ':' + '').toString('base64')}`,
|
||||
},
|
||||
}
|
||||
|
||||
// Отправка запроса и обработка ответа
|
||||
const req = https.request(url, options, (res) => {
|
||||
let responseData = ''
|
||||
|
||||
res.on('data', (chunk) => {
|
||||
responseData += chunk
|
||||
})
|
||||
|
||||
res.on('end', () => {
|
||||
// Проверка кода ответа
|
||||
if (res.statusCode === 200) {
|
||||
try {
|
||||
const parsedData = JSON.parse(responseData)
|
||||
|
||||
// Проверка наличия объекта order в ответе
|
||||
if (parsedData.order) {
|
||||
const order = parsedData.order
|
||||
|
||||
// Проверка наличия необходимых полей в объекте order
|
||||
if (order.hppUrl && order.id && order.password) {
|
||||
// Формирование итоговой ссылки
|
||||
const finalUrl = `${order.hppUrl}?orderid=${order.id}&password=${order.password}`
|
||||
|
||||
// Использование итоговой ссылки
|
||||
console.log(`Итоговая ссылка: ${finalUrl}`)
|
||||
}
|
||||
else {
|
||||
console.log('Объект order не содержит необходимых данных.')
|
||||
}
|
||||
}
|
||||
else {
|
||||
console.log('Ответ не содержит объекта order.')
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
console.error('Ошибка:', error)
|
||||
}
|
||||
}
|
||||
else {
|
||||
console.error(`Ошибка ${res.statusCode} при запросе: ${responseData}`)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
req.on('error', (error) => {
|
||||
console.error('Ошибка запроса:', error)
|
||||
})
|
||||
|
||||
req.write(JSON.stringify(data))
|
||||
req.end()
|
||||
@ -1,7 +1,7 @@
|
||||
import type { MaybeRef } from 'vue'
|
||||
import { useMutation, useQueryClient } from '@tanstack/vue-query'
|
||||
import { unref } from 'vue'
|
||||
import { postOrdersCreate } from '~/api/endpoints/orders'
|
||||
import { postOrdersCreate } from '~/api/endpoints/wp/orders'
|
||||
|
||||
export const usePostOrdersCreate = () => {
|
||||
const queryClient = useQueryClient()
|
||||
@ -1,6 +1,6 @@
|
||||
import { useQuery } from '@tanstack/vue-query'
|
||||
import { unref } from 'vue'
|
||||
import { getProductAttributesDetail } from '~/api/endpoints'
|
||||
import { getProductAttributesDetail } from '~/api/endpoints/wp'
|
||||
|
||||
export const useGetProductAttributesDetail = (productId: MaybeRef<number>) => {
|
||||
return useQuery({
|
||||
@ -1,6 +1,6 @@
|
||||
import { useQuery } from '@tanstack/vue-query'
|
||||
import { unref } from 'vue'
|
||||
import { getProductsDetail } from '~/api/endpoints'
|
||||
import { getProductsDetail } from '~/api/endpoints/wp'
|
||||
|
||||
export const useGetProductsDetail = (productId: MaybeRef<number>) => {
|
||||
return useQuery({
|
||||
@ -1,5 +1,5 @@
|
||||
import { useQuery } from '@tanstack/vue-query'
|
||||
import { getProductsList } from '~/api/endpoints/getProductsList'
|
||||
import { getProductsList } from '~/api/endpoints/wp/getProductsList'
|
||||
|
||||
export const useGetProductsList = () => {
|
||||
return useQuery({
|
||||
@ -1,6 +1,6 @@
|
||||
import { useQuery } from '@tanstack/vue-query'
|
||||
import { unref } from 'vue'
|
||||
import { getProductsVariationsList } from '~/api/endpoints'
|
||||
import { getProductsVariationsList } from '~/api/endpoints/wp'
|
||||
|
||||
export const useGetProductsVariationsList = (productId: MaybeRef<number>) => {
|
||||
return useQuery({
|
||||
@ -1,4 +1,4 @@
|
||||
import { useGetProductsDetail, useGetProductsVariationsList } from '~/api/queries'
|
||||
import { useGetProductsDetail, useGetProductsVariationsList } from '~/api/queries/wp'
|
||||
|
||||
export const useProduct = (variantId) => {
|
||||
const route = useRoute()
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { useGetProductsList } from '~/api/queries'
|
||||
import { useGetProductsList } from '~/api/queries/wp'
|
||||
|
||||
export const useProductsList = () => {
|
||||
const { getAttribute } = useProduct()
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { usePostOrdersCreate } from '~/api/mutations'
|
||||
import { usePostOrdersCreate } from '~/api/mutations/wp'
|
||||
|
||||
const { cart } = useCart()
|
||||
const { mutateAsync } = usePostOrdersCreate()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user