Python – die besten Beiträge

Cross Origin Anfrage blockiert?

Ich möchte gerade eine REST-API für mein Heimnetzwerk einrichten um über z.B. einen button einen CMD befehl auf dem Server PC auszuführen.

Mein Pythonscript für die API:

from flask import Flask, request, jsonify
from flask_cors import CORS

app = Flask(__name__)
CORS(app)

@app.route('/execute-command', methods=['POST'])
def execute_command():
  # Hier wird der Code zum Ausführen des Befehls eingefügt
  result = "Befehl wurde ausgeführt."
  return jsonify({"response": result})

if __name__ == '__main__':
  app.run(host='0.0.0.0', port=5000)
Mein HTML Script<!DOCTYPE html>
<html>
<head>
  <title>API Test</title>
</head>
<body>
  <button id="executeBtn">Befehl ausführen</button>
<script>
  document.getElementById('executeBtn').addEventListener('click', function() {
    fetch('http://localhost:5000/execute-command', { // Verwende absolute URL
      method: 'POST',
    })
    .then(response => response.json())
    .then(data => {
      console.log(data);
    })
    .catch(error => {
      console.error('Fehler:', error);
    });
  });
</script>
</body>
</html> 

Ich bekomme als Fehler von Firefox in der Konsole:

Quellübergreifende (Cross-Origin) Anfrage blockiert: Die Gleiche-Quelle-Regel verbietet das Lesen der externen Ressource auf http://localhost:5000/execute-command. (Grund: CORS-Anfrage schlug fehl). Statuscode: (null).

Fehler: TypeError: NetworkError when attempting to fetch resource

Entschuldigung wenn es offensichtlich ist, bin da noch sehr frisch und habe keine Lösung gefunden.

Netzwerk, HTML, Webseite, JavaScript, HTML5, Code, Netzwerktechnik, Port, Programmiersprache, Python, Webentwicklung, JSON, Flask

Discord ticket bot Öffnet kein ticket?

Wenn ich versuche ein neues ticket zu öffnen Kommt in discord der fehler: "Diese Interaktion ist fehlgeschlagen und im code-editor kommt die Fehlermeldung: "Traceback (most recent call last):

 , line 427, in _scheduled_task

  await item.callback(interaction)

, line 35, in ticket

  await interaction.defer(

AttributeError: 'Button' object has no attribute 'defer'

import discord

from discord.ext import commands

TOKEN = "DISCORD-BOTTOKEN"

bot = commands.Bot(command_prefix="!",

                   intents=discord.Intents.all(),

                   status=discord.Status.dnd)

async def change_bot_activity():

    activity = discord.Activity(type=discord.ActivityType.watching, name="")

    await bot.change_presence(activity=activity)

@bot.event

async def on_ready():

    print("Bot is Ready!")

    await change_bot_activity()

@bot.command(name="ticket")

@commands.has_permissions(administrator=True)

async def ticket(ctx):

    embed = discord.Embed(

        description="Drück den Button, um ein neues Ticket zu erstellen!"

    )

    view = CreateButton()

    await ctx.send(embed=embed, view=view)

class CreateButton(discord.ui.View):

    def __init__(self):

        super().__init__(timeout=None)

    @discord.ui.button(label="Create Ticket", style=discord.ButtonStyle.blurple, emoji="🎫", custom_id="ticketopen")

    async def ticket(self, button: discord.ui.Button, interaction: discord.Interaction):

        # Nutzerinteraktion bestätigen

        await interaction.defer()

        category = discord.utils.get(interaction.guild.categories, id=)

        for ch in category.text_channels:

            if ch.topic == f"{interaction.user.id} DO NOT CHANGE THE TOPIC OF THIS CHANNEL":

                await interaction.followup.send("Du hast bereits ein Ticket: {0}".format(ch.mention), ephemeral=True)

                return

        r1 = discord.utils.get(interaction.guild.roles, id=)

        overwrites = {

            interaction.guild.default_role: discord.PermissionOverwrite(read_messages=False),

            r1: discord.PermissionOverwrite(read_messages=True, send_messages=True, manage_messages=True),

            interaction.user: discord.PermissionOverwrite(read_messages=True, send_messages=True),

            interaction.guild.me: discord.PermissionOverwrite(read_messages=True, send_messages=True)

        }

        channel = await category.create_text_channel(

            name=str(interaction.user),

            topic=f"{interaction.user.id} DO NOT CHANGE THE TOPIC OF THIS CHANNEL!",

            overwrites=overwrites

        )

        await channel.send(embed=discord.Embed(

            title="Ticket erstellen",

            description="Pinge keine Teammitglieder",

            color=discord.Color.green()

        ))

        await interaction.followup.send(

            embed=discord.Embed(

                description="Erstelle ein neues Ticket {0}".format(channel.mention),

                color=discord.Color.white()

            )

        )

bot.run(TOKEN)

Bot, Programmiersprache, Python, Python 3, Discord, Discord Bot

Meistgelesene Beiträge zum Thema Python